SPECTRUM 4449
DEUS EX MACHINA, ¡EL AUDIO-VIDEO!
Un nuevo concepto de juego por ordenador Ha nacido el audio-video por ordenador.
llega de la mano de Investrónica.
Deus ex Machina.
Una historia de Ciencia-Ficción creada por
Andrew Stagg, con música de Mel Croucher. A investronica
Ad S z A SAA AA
Siéntate ante tu televisor ... sincroniza la
banda sonora y sumérgete en un Tomás Bretón 60. Tel! (9) 4876 10, Télex 22998 IYCO E 28045 Madrid
espectáculo total. Camp, 80. Telf (83) 211 26 58-211 2754. 08022 Bar
SPECTRUM. El MAXIMUN EN SOFTWARE
- NUM. 45
AÑO II
125 PTS. ==.
Canarias 135 ptas.
OTI
LAS NOVEDADES
DELA 8*
COMPUTER sHOw
LAT
ELBUZO ¿
BASKET
LOS
ANILLOS |
MICROHO25
b EMAÑe,
AÑO 11 - N./ 45
PVP 9.950 Mm
ASNO MD 10/20 157 O)
SPECTRUIV
PVP 5.250 M
PVe 9.500 M5
Distribuido par:
inde=scorry
1-Interface multijoystick*
2-Interface joystick programable
o Sao Ge
4-Centrónics/RS232 con cable
5-Ampliación de memoria interna
6-Ampliación de memoria externa
7-Controlador doméstico
8- ELL
PERIFERICOS
PVP 7.500 m
PVP 2.950 M
* permite controlar por 102 jugadores, sin necesidad
de programacion, cualquier juego preparado para
uno de los cuatro sistemas estandar
Sánchez Pacheco, 78
283002 - Madrid
Teléfono 413 92 683
DE VENTA EN TIENDAS ESPECIALIZADAS
PVP 8.900 tw
AE
Director Editorial
José |. Gómez-Centurión
Director Ejecutivo
Domingo Gómez
Subdirector
Gabriel Nieto
Redactor Jefe
Africa Pérez Tolosa
Diseño
Rosa María Capitel
Redacción
José María Diaz,
Miguel Angel Hijosa,
Fco. Javier Martin
Secretaria Redacción
Carmen Santamaria
Colaboradores
Jesús Alonso, Primitivo de
Francisco, Rafael Prades, Miguel
Sepúlveda, Sergio Martínez
y J. M. Lazo
Fotografia
Javier Martinez, Carlos Candel
Portada
José María Ponce
Dibujos
J.R. Ballesteros, A. Perera,
F.L. Frontán, Pejo, J.M. López Mo-
reno, y. Igual, J.A. Calvo, Lóriga,
Luisma, J. Olivares.
Edita
HOBBY PRESS, S.A.
Presidente
María Andrino
Consejero Delegado
José |. Gómez-Centurión
Jefe de Publicidad
Marisa Esteban
Publicidad Barcelona
José Galán Cortés,
Tels.: 303 10 22 - 313 71 76.
Secretaria de Dirección
Marisa Cogorro
Suscripciones
MA? Rosa González
M2 del Mar Calzada
Redacción, Administración
y Publicidad
La Granja, n.* 8
Poligono Industrial de Alcobendas
Tel.: 654 3? 11
Telex: 49480 HOPR
Dto. Circulación
Carlos Peropadre
Distribución
Coedis, S.A. Valencia, 245
Barcelona
Imprime
Rotedic, S.A.
Carretera de Irún, Km. 12,450
Tel.: 734 15 00
Fotocomposición
Espacio y Punto, S.A.
Paseo de la Castellana, 268
Fotomecánica
Grof
Ezequiel Solana, 16
Depósito Legal:
M-36.598-1984
Representante para Argentina,
Chile, Uruguay y Paraguay, Cia.
Americana de Ediciones, S.R.L.
Sud América, 1.532. Tel.: 21 24 64.
1209 BUENOS AIRES (Argentina).
MICROHOBBY no se hace
necesariamente solidaria de las
opiniones vertidas por sus
colaboradores en los articulos
firmados. Reservados todos los
derechos.
Solicitado control
AÑO Il. N.? 45. 24 al 30 de septiembre de 1985
125 ptas. (Sobretasa Canarias 10 ptas.)
Bi MICROPANORAMA
Las últimas novedades llegadas de la octava «Personal
Computer World Show» celebrada en Londres.
Mi TRUCOS.
8 PROGRAMAS MICROHOBEY.
e NUEVO comia cuca ae tes Sombras.
MM CODIGO MAQUINA.
22 GREMLINS. ice lA a los GREM-
24 PROGRAMAS DE LECTORES.
uzo. Basket
E UTILIDADES. Cezywo: un copiador muy es-
32 CONSULTORIO.
BN OCASION.
e Sta
Po ersonal,
Co pt Y
SROW
OSCAR GOMEZ RAMOS.
Navas de Tolosa, 2, Bj Dr. Va-
lle de Trápogo (VIZCAYA)
Cinta de programas (5.* Cat)
RAMON MARQUEZ MON-
TERO. Alameda S. Antón, 27,
Bl Iz, 6.2 Cartagena [MUR-
CIA).
Suscripción a Microhobby Se-
manal por un año (4.* Cat.)
FRANCISCO ROBLES. Pedro
Maseveu, 7, ESC. 1, 1. D,
Oviedo (ASTURIAS)
Cinta de programas (5.* Cat.)
PEDRO BRAVO. S. Martín de
Porres, 20 IMADRID).
Cinta de programas (5.2 Cat.)
JOSE LUIS MICHE GONZA-
LEZ. Ronda de Pío XII, 18 [SE-
VILLA).
Cinta de programas (5.* Cat.)
JOSE LUIS RODRIGUEZ SAN-
2 HESTUVIMOS en
Mutter
la «Personal
Computer
Show» de Londres!!
CHEZ. Ctra. de Montiel, 22
Villahermosa (CIUDAD REAL)
Cinta de programas (5.2 Cat.)
MANUEL SALDAÑA PEREZ.
Palomar, 29. Puerto-Llano
(CIUDAD REAL).
Cinta de programas (5. Cat.)
ANGEL ANTON RODRI-
GUEZ. S. Clemente, 10, 1.2 A.
Santiago de Compostela [LA
CORUÑA.
Cinta de programas (5. Cat.)
MANUEL DIEZ ALVAREZ. Cea
Bermúdez, 42, 3. Gijón (AS-
TURIAS)
Suscripción a Microhobby Se-
manal por un año (4.? Cat.)
DALMIRO GONZALEZ. Martí-
nez Maldonada, 71. [MALA-
GAl.
Cinta de programas (5. Cat)
ABELLA CRUZ. Chile, 2, 4, 5.2
PREMIADOS HOBBY-SUERTE
Izda. Ferrol (LA CORUÑA).
Suscripción a Microhobby Se-
manal por un año (4.” Cat.)
JESUS LOPEZ MOURIZ. Auto-
nomía, 83, 1.?, 1.2
(BARCELONA).
Cinta de programas (5.” Cat.)
VICENTE VELA NIETO. Puerta
de Alancos, 3, 6.. [CIUDAD
REAL)
Cinta de programas (5.* Cat.)
ENRIQUE GARCIA SAN-
CHEZ. Avda. del Sur, 5, 1.*
Carlets (VALENCIA)
Cinta de programas (5. Cat.)
FRANCISCO YUNA BEl-
TRAN. SolvadorRubio, 1.[VA-
LENCIA).
Cinta de programas (5.* Cat.)
FRANCISCO HERNANDEZ
YAÑEZ. Avefría, 16, 3.2 D.
(MADRID).
Cinta de programas (5.? Cat)
Tarrasa
MICROHOBBY 3
septiembre se ha celebra-
do en el Olympia de Lon-
dres, la 8 PERSONAL
COMPUTER SHOW,
considerada como la Fe-
ria de Ordenadores Per-
sonales más importante de
Europa, y que abarca todo
un extenso mercado de apli-
caciones, educación y juegos.
Hasta allí nos desplazamos pa-
ra mantener puntualmente infor-
mados a nuestros lectores de todas las novedades producidas en este campo, y
más concretamente, las relacionadas con ordenadores Sinclair.
Este año, octavo de su celebración, ha reunido a más de doscientas compañías
especializadas en las diferentes áreas que cubre la muestra.
Siguiendo la idea de lo que parece ser
se ha convertido en el mayor negocio de
software, la adaptación de películas al or-
denador, no podía faltar lo último de Ste-
ven Speilberg, «The Goonies». Por con-
tar con unc de los más apreciados condi-
mentos a la hora de programar, la aventu-
ra, la obra de este joven director ya fue un
éxito en este mundo informático con
«Gremlins» y, ahora, estamos seguros
que no será menor con esta nueva adapta-
ción.
U.S. Gold es la compañía embarcada
en este negocio seguro que pronto podre-
mos disfrutar en España.
Durante los días 4 al 8 de '
Aspecto general de la feria.
EL QL EVOLUCIONA: Más potencia
a menor precio.
Sinclair refuerza notablemente el
atractivo de su QL en base a una
drástica reducción del precio y a la
incorporación de nuevos periféri-
cos y paquetes de aplicaciones, de-
sarrollados por Eider-
soft y Psion.
La mayoría de los
visitantes acudían al
stand atraídos por la
sorprendente rebaja
sufrida por el QL, que
ha pasado a valer 199
libras, en lugar de las
399 que empezó cos-
tando, lo que supone
un 50% de ahorro. Es-
ta rebaja se interpreta
en medios especializa-
dos como un intento
de competir con otras
máquinas de similares prestaciones,
a la vez que se pretende aumentar
el número de QLs en el mercado, lo
que aseguraría su supervivencia.
Esto es así porque los fabricantes de
Software no están dispuestos a de-
sarrollar programas para ordena-
dores de poca difusión.
Como gran novedad, presenta-
ron las unidades de Disco para el
QL de 3,5” fabricadas por la com-
pañía de hardware Micro Perip-
herals Ltd. (aunque esta vez su-
pervisadas directamente por
Sinclair).
Dichas unidades están capa-
El stand de Sinclair, uno de los más visitados.
citadas para almacenar 720 K
por disco (formateado a doble
cara) y son controladas por el
QL Double Density Disk Interfa-
ce, también de la misma casa. El
promedio de tiempo de acceso
es de, aproximadamente, un se-
gundo.
El sistema completo será dis-
tribuido en exclusiva para Espa-
ña por Investrónica.
Sofcard es un aparato de me-
moria sólida que sorprende por su
diseño compacto y por la gran va-
riedad de usos.
Las nuevas tecnologías han
permitido crear un IC chip de re-
ducidas dimensiones y superficie
plana que, además, no pierde ca-
pacidad de memoria.
Impreso en una tarjeta de tama-
ño de las de crédito, tenemos 256
Kb de capacidad de memoria y un
megabyte en la versión que estará
disponible próximamente. Sof-
card puede ser también usado
como sustitutivo de un cassette o
un disco, y cuando se necesite
una expansión de memoria.
Sus aplicaciones son múltiples,
pero el terreno donde se muestra
más revolucionario es en el de los
juegos, ya que permitirá disponer
de un soporte fiable, barato, de ve-
locidad de carga casi instantánea
y que además, ocupa un reducido
espacio.
Otra de sus habilidades es la de
permitir la creación de imágenes
en color y la información puede
ser impresa por ambas caras.
Es adaptable a diferentes tipos
de ordenadores através de las zo-
nas que utilizan éstos para los car-
tuchos de ROM.
Se trata, en definitiva, de una
tarjeta revolucionaria tanto por su
precio como por sus aplicaciones,
que supondrá un claro avance
tecnológico y sobre todo, un estu-
pendo soporte para todo tiro de
aplicaciones.
THE FUTURE IS FOR
(1: 19] [0] M0]: 4JO DE
RT AAA ATITET
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
OTRA COMPAÑIA DE SOFTWARE
Una nueva compañía hace su aparición en la escena
del Software. Estamos hablando de Electric Dreams. Y lo
ha hecho con dos juegos que, a juicio de muchos, son
bastante revolucionarios en muchos aspectos. Sobre to-
do «l, OF THE MASK, que utiliza una nueva generación
de las técnicas gráficas en 3 dimensiones, con algunas se-
cuencias de una especie de cabeza geométrica que gira
alrededor de sí mismo suspendida en el espacio. El per-
sonaje del juego se desenvuelve en una estructura la-
beríntica tridimensional de la que será muy difícil salir.
El autor es Sany White, el legendario creador del Ant
Atack (Hormigas), que además es el primer programa-
dor que investigó los sistemas tridimensionales en los jue-
gos para Spectrum, por cierto con bastante éxito.
A diferencia de otros programas, las pantallas por
las que vamos pasando no se encuentran archivadas en
un banco de datos, sino que se forman esporádicamente
partiendo de logaritmos matemáticos.
Otra de las innovaciones que incorpora, es la utiliza-
ción de sombreados en la formación de gráficos con el
fin de evitar la molesta mezcla de atributos tan peculiar
del Spectrum.
El otro programa se llama RIDDLER'S DEN, una
aventura basada en un simpático personaje que es una
especie de hombre elefante.
1 MATCH POINT,
|
|
|
|
|
|
|
PARA EL QL
Por fin, y aunque parezca mentira, alguien ha pen-
sado que sería muy interesante plantearse que el QL
puede ser también un magnífico ordenador de jue-
gos. Ese alguien se llama PSION y el programa no es
otro que el «archiconocido» Match Point, pero en es-
ta ocasión en su versión para este ordenador.
Se ha aprovechado bastante bien la potencia gráfi-
ca del OL para dotar al programa de una vistosidad y
unos efectos que superan, incluso, a los de la primera
versión.
El programa ya está disponible en el Reino Unido
y fue presentado también en la feria de Londres.
MICROHOBBY 5
Twinriter 5 es la nueva im-
presora de Brother, que ha sido
presentada recientemente en la
Personal Computer Show.
El método de impresión que
usa es el de matriz de puntos y
tiene una velocidad máxima de
40 caracteres por segundo, con
un sistema de carga bidireccio-
nal.
Otros datos de interés son: la
capacidad de copia, la posibili-
dad de incorporar un Interface
RS 232 además del Centronics,
es compatible con IBM y el buf-
fer de 3 Kb.
EL SEÑOR DE LOS ANILLOS
Héroes y villanos, aventuras y excitación, colori-
do y animación son los mejores argumentos para defi-
nir una de las películas más taquilleras de los últimos
años, «El señor de los Anillos», que, como ya viene
siendo habitual, va a deleitar a muchos en la nueva
versión creada para ordenador.
La companía encargada de llevar a cabo este even-
to, de lo más plausible, ha sido MELBOURNE HOU-
SE basándose en el trabajo de Philip Mitchell que ya
nos deleitara anteriormente con «The Hobbit» y esta-
rá disponible para Spectrum 48 K, Commodore 64 y
Amstrad, según afirmarón en la feria.
Esperemos que sea pronto.
6 MICROHOBBY
CONFIRMADO:
EL SUPERSPECTRUM DE 128 K
SE PRESENTA EN SONIMAG
Los insistentes rumores que circulaban en los últimos
días sobre la aparición de una nueva máquina Sinclair,
acaban de confirmarse. El Spectrum 128 K es ya un
hecho.
La presentación en SONIMAG del nuevo ordenador se
hace como auténtica primicia mundial, ya que por el mo-
mento sólo saldrá en España. La venta en Inglaterra se ha
pospuesto para el próximo año porexigencias de merca-
do ya que el amplio stock de Spectrum y Spectrum +
existente en el Reino Unido desaconsejan la operación.
El tamaño es similar al del Spectrum+ y quizás, lo más
significativo del nuevo modelo sea que incorpora un te-
clado numérico auxiliar que se acopla mediante un co-
nector al principal.
La exclusiva de España se debe a la circunstancia de
haber sido desarrollado conjuntamente por SINCLAIR e
INVESTRONICA, su distribuidor oficial en nuestro país.
Como consecuencia de esto, el nuevo Spectrum lleva
incorporada la letra «ñ», cumpliendo además todos los
requisitos para adecuarse a la nueva normativa del De-
creto Ley sobre homologación de ordenadores.
El teclado incluye inscripciones traducidas (en la me-
dida de lo posible) como pueden ser los colores: blanco,
azul, etc. en lugar de white, blue, etc.
Otro detalle importante es que no vaa serimportado si-
no producido y fabricado integramente en España por
INVESTRONICA.
La compatibilidad será total con el software existente y
los primeros paquetes desarrollados específicamente
serán integramente en castellano.
¡LISTADO FUERA!
Para evitar que salga el
listado en pantalla, algo que
puede no ser conveniente
ante miradas curiosas, Ger-
man Bravo, nos ha enviado
un POKE con el que se con-
seguirá borrarlo sin que se
bloquee.
POKE 23659,255
Una advertencia, se debe
incluir en la primera línea
una vez que el programa se
haya terminado y verificado.
DEDOS EN DOS
Ixidor Zarrañaga ha que-
rido colaborar en esta sec-
ción, no con uno, sino con
dos trucos que, según co-
menta en su carta, espera
que nos sean de utilidad.
Eso lo veréis vosotros.
El primero de ellos es pa-
ra hacer BREAK en un pro-
grama tecleando RANDOMI-
ZE USR 1357.
Por ejemplo: 10 INPUT a:
IF a= 12345 THEN RANDO-
MIZE USR 1357.
Si en medio de un progra-
ma hecho por nosotros po-
nemos el ejemplo anterior y
el número 12345 sólo lo co-
nocemos nosotros y el pro-
grama lo hemos protegido,
lo podemos cortar.
El segundotruco sirve pa-
ra hacer NEW sin que el PA-
PER se oscurezca.
Tecleando RANDOMIZE
USR 4657 equivale a la sen-
tencia NEW.
Si en algún caso quisiéra-
mos poner la frase «Sinclair
Research Ltd.» se puede po-
ner RANDOMIZE USR 4756,
saliendo en la parte supe-
rior de la pantalla.
Si, por el contrario, que-
remos que salga en cual-
quier lado de la pantalla, ha-
brá que poner, por ejemplo:
PRINT AT 19,0;USR 4756
Y para que aparezca en
su lugar correcto:
PRINT + 9; USR 4756
Esto último no borra un
hipotético programa que
estuviese en memoria.
CARGADOR HEXADECIMAL EN CODIGO MAQUINA
Una vez más el lenguaje
máquina viene en nuestro
auxilio para implementar
una pequeña rutina de gran
utilidad para los programa-
dores, y que puede em-
plearse desde Basic sin nin-
gún problema.
Se trata de representar en
hexadecimal cualquier nú-
mero decimal, de V a65535.
Para ello, como puede ob-
servarse en la línea número
20 del programa cargador
Basic, introducimos nuestro
número decimal en la varia-
ble SEED, mediante la ins-
trucción RANDOMIZE.
D+
- MON OMOOND
> -- JD
DemmeAz
- Pak D
m- Ge
nm
A
¿A:
- PTE
AA]
p
POB ELITE
WERE 21D
os
a o
Mp
a
La
R N=23296 TÚ
mp
Luego, basta llamar a la
rutina en máquina que hace
el trabajo duro e instantá-
neamente aparecerá el nú-
mero en la pantalla.
Como casi siempre, pro-
ponemos como dirección
de ensamblado el buffer de
impresora, utilizado en el
programa cargador.
Para los que posean un
ensamblador o estén intere-
sados en averiguar cómo
funciona la rutina, propor-
cionamos también la rutina
escrita en lenguaje ensam-
blador.
INPUT "NUMERO
SANDOMIZE CIF:
R- Gum
MAA]
A]
E LINE
naar La
ama me +
ao
a
En este espacio también tienen:ca=
bida los trucos que nuestros lecto=
res quieran proponer.
Para ello, no tienen más que enviar=
los por correo a MICROHOBBY,
C/ La Granja, 8. Poligono Industrial
de Alcobendas (Madrid).
MICROHOBEY 7
LOS ANILLOS
Carlos CERVERA
pectrum 48 K
La imaginación al alcance de tu mano, o mejor de tu
dedo, podría ser la frase ideal para presentar este
original juego cargado de fantasía.
Y esta fantasía va a hacerte falta si te
sumerges en él, ya que estaremos re-
presentados por un anillo al que hemos
de conducir a través de siniestros túne-
les y cuevas en busca de un dedo, el de
su amo.
La tarea no es fácil, desde luego, si
tenemos en cuenta que varios dedos
más estarán esparcidos por este fantas-
OT ADUa só Er
PA
6.PRPER 9: BORDER €: BRIGHT 1
INK 7: CL
7 RESTÓRE 9990: GO SUB 9900:
LET_rec=
3 BRiNT,, AT, ¿24 12¿¿ANILLO LOCO
": PLOT Ras 235,9 PRAU "aL
se, dsp
NECESITAS INGTRUCCE
A f=0 TO 40: BE
THEN GO TO 12
THEN GO TO 16
o
E LN USA al OS
E 0: CLS : PRINT AT "IN:
TRUCcrONeS" ar A
ERES _UN ANILLO SE
ILTRADO EN LAS GALERIAS DE UNI
IEVA.ESTAS EN ESTA Cul Pl ES? HA
del RDIDO_ EL DEDO DE TU L
IM
TANTOS DEDOS ALLI DECIDES, RE
COPERARLOS PERO TU MISION SE VER
A _OBSTRUIDAPOR LA PRESENCIA DE Lt
AS CRUELES U'“AS DE LAS CUEVAS
LAS TECLAS SON: Q..
NOS R..
. “EZ0UZERDA Po.
. DEREC!
PULSA UNA TECLA PARA
ES 3
7; FOR f=0 TO 21: FOR n
EN IF CODE cc AS
ar THEN PRINT AT_fo.n “: "BEER .0
E
14 PRI AT E pan SCREENS tf,
BEEP .01,10: NEXT _f
15 PRINT_AT Ms JE Pause E
0: PRINT_AT 21,15 PAUSE 10
PRINT_AT 21,15;"/" PAUSE 108
RINT_AT 21, 18; “br: PAUSE 10: IF
INKEY$= FHEN Go T Ss
16 PRINT AT 21,0;"
7: FOR f=0 TO 20: POKE PERE ESS
e READ a,a$: PRINT INK a;a$: EX
Por Carlos Cervera
24 DATA O
8 MICROHOBBY
magórico sitio, provocándonos alguna
que otra confusión a la hora de recono-
cer el buscado. Por otro lado, al profa-
nar las cuevas, las uñas guardianas, en-
furecidas, nos perseguirán y unas bolas
saltarinas intentarán aplastarnos a su
paso.
Muchas sorpresas encierra este di-
vertido juego. Prueba a superarlas.
HL
LeT
PRÍNT. INK_S;AT_0,9;"P
únt; INK_S;AT 0,12;"ÚID
INK 4;AT 0,21; “RECORD:
"¡rec
¿99¿PRINT INK 6;AT 4,0;
4 INT, INK 2;AT MENA
AS PIDA pri
INK 2;"
vio PRINT mala 7;AT 10.3;"g" ¿BT
pe ica 14,3) "B"¡AT 11,17;
O PRINT INK SAT 12,0; :vvwwww
"5 INK 7;"BD"; IN
DAMMAM
RINT INK 7;AT 13,22; "H";AT
RINT_ INK 7;AT_15,0;"bH"; IN
“VOTE VIVIVVVVVVIVIVIVIVIVVVY
INK_7;AT 16
AT
210 PRINT. INK 7;AT 19,20;"H";AT
20,28
EE Phrer ETE A
LET_a$="00
[K
Mi
¿a ore yl
Pair AT Y,xja$(n);AT y+
INKEYS$="a" THEN IF CODE
(Y-1,X)=32 THEN IF CODE
(Y+5,x)=32 THEN IF CODE
A THEN IF CODE 5
3 5=%a" THEN IF
SÓREENS 1U-1,2)=32 THEN Te CODE
SCREENS (Y+4,x)=32 THEN LET Y=
1: PRINT AT Y,x;as$(n);AT Y-1,x;"
314 _IF INKEYS= HEN _1F CODE
SCREENS (Y+1,X)=8_ TH
CREENS (y+2,X)=0 THEN LET hr
321 IF_a$(n)="0" OR O T
HEN _ GO _TO 358
325 IF x>x1 AND x1<31 THEN LET
x1=Xx1+1: PRINT INK 5;¡AT y1,x1;
AT y1,x1-1; al
326 el x<x1 AND x1>1 THEN LET _x
1=Xx1-1: adn INK S;AT Y1,x1;"8"
¿AT_y1 ; a
327 Íp% si THEN IF CODE SCREEN
JAVIER IGUAL
CODE PEREEÑA.
HEN OIT AT 17,
117,8)<>8 T
(8,13)<>0 T
$ (14,22)<>0
,¿$11,3)<>0 T
(11,17)<>0
THEN SRINT AT_11,17;*
Es, 31):<>0 T
=70 THEN LET
punt=punt+190: LT pant=1: LET
nivel=500: GO SUB 800
ON Xx=x1 AND y=y1 THEN GO TO
400 _PRINT AT _y,x; ao LET n=n
+1: IF n=5 THEN LET
508 REM *£% NIVEL 2 £%%
Es LEI a$="0010": LET_ nm=1
: PRINT INK S;AT 9,0
uNTes: S punto
Pudo EN
e
S11 INK S
2
521 PRINT AT 7,0;
0) 080 0000
a
ha Pl
cal”
528 INK 7
550 PRINT AT 29,31;
531 PRINT_INK 3; a 7
29 “¡AT 9,215
532 LET x=1: LET y=28
LET yi= LET x2=18:
40_IF INKEYS$="q' THEN IF CODE
REENS_ (y-1,X)<>0 THEN_LET y
PRINT AT 4,x;a$1n);AT Y+1,x;
S4L_IR INKEYS="3* THEN TE CODE
SCREENS (Y+1,X)=32 THEN _LET Y=3y+
1; PRINT AT d)x jas (m) AT Yi"
542 IF INKEYS$="p" THEN IF CODE
SCREENS _(Y,x+1)=32 THEN_LET x=Xx+
1; PRINT AT y,xja$(n);AT Y,x-1;"
S43_IF INKEYS
GOREENS xd)
1; PRINT AT y,
S44 IF INT (RND*30)=0 THEN GO T
548 IF x>x1_THEN_IF CODE SCREEN
$ _(y1,x1+1)=32 THEN LET x1=x1+1
PRINT INK 4;AT y1, PTE INK a
z 1,Xx1-1
S49 IF x<x1 _THEN_IF CODE SCREEN
$ _(y1,x1-1)=32 THEN LET x1l=x1-1:
"o" THEN IF CODE
2 THEN_LET x=:
¡a5(n) AT Y,x+1;
PRINT INK 4; AT y1,x1;* a
¡AT Y1,X1+1;
550 IF y<yl THEN IF CODE, SCREEN
$ (y1-1,x1)=32 THEN LE y1-
ERINT O INK 4; AT Ja rat IA O
¡AT yl+ a
edad Lo ETRNEAT, E9OS soncen
yas 2 =414
PRINT TUI II a77 1 O
; US ER
ss2_1F 2 _THEN_1F CODE SCREEN
$5 1ua,x =532 THEN LET x2=x2+1
PRÍINT 4 ; INK 0
¡AT_Y2. H
S53_1F 2 _THEN_IF CODE SCREEN
$ (y2a,x ¿OS THEN LETOxB=xG 1:
PRINT 4 e
¿BT Ye, A
554 _1F a
$5 (ya-1 =
PRINT 4
AT_y2+1,x2;
Ses TE giga THEN TF EQDE SCREEN
$ (y2+1,x2)=32 THE ya=y2+1:
PRÍNT INK_4;AT. A E
¡AT_ye-1,x2;
-558 IF ATTR (Y+1,x)=68 OR ATTR
(y-1,x)=68 OR ATTR (Y,x-1)=68_OR
ATTR (y ,x+1)=68 THEN GO SUB 590
560 IF ATTR ia 07 Al ETT
ty
3
S61 IF Carra tósa, X)=57 OR ATTR
Y,X+1)=67 OR_ATTR_(y,x-1)=67 TH
NIF x<23 THEN ARE peón? ona ida
¿ PRINT INK 9; 9,21; AT
22; PRINT E SjAT O, 7; Dual
IF CODE A 7 29) =32' THEN
PRINT_AT 20,31
578 IF x=31 THEN LET AS 2: LE
T_nivel=5600: GO SUB 80
580 _PRINT AT _Y,x; asin LET n=n
+1: IF n=5 THEN LÉT n=
540
660 PRINT Sr n,b; b=
b-4: LET n=n+1: ES LbzO. THEN Eo P
7
LET y=15: LET a$="
og10"; LET_n=1
88 LET_x1=10: LET yi=14: LET x
2=24: LET y2=10
Li E FIN AT f,3
PRI Vat
¡AT 15,19;
681 FOR
Ni
2d THEN IF CODE
2 THEN_LET y=
1; PRINT AT Y ,Xj¡a$(n) ¡AT y+1,x;
691_IF INKEY THEN IF CODE
sóREENS Yi) x) =32 THEN_LET ES
1; E AT Y xjas (mM); AT y-1,
692 INKEYS$="P" AND x<31 a
FE cóbE SCREENS (4X+1)=52 THEN
LET Pl Y as Ind;
XEZUOS AND x28 THEN
IE CODE SCREENS (4 1x4) =02 THEN
Lor 7x1; PRINT Af Yix; as tm); AT
864 Tb asin) ="0" OR asimi="0" 7
HEN 60 _TO 708
709, 1, X15%_THEN_ IF E
E
=x2-
PRINT AT di INK 4; “ar, AT de
702 IF x1<x"_THEN_IF CODE SCREEN
$ (Y1,x1+11=32 THEN LET xi=X1+1:
PRINT AT YI de INK 4;"A";AT yí
703_IF_x2<x THEN _IF CODE SCREEN
32 THEN LET x2=x2+1:
NK 4 Toya
THEN_IF CODE SCREEN
2 THEN LET y2=y2-1:
e AT, Y2,x2;"8"; INK 7
ar
¿Só MEAT Ar Y, ¿25m LET n=n
+1: IF n=S THEN LET
709 IF ATTR ES OR ATTR
(y-1,X)=68 OR ATTR (Y,x+1)=68 OR
4 SS THEN LET mivel=
710 IF ATTR (Y+1,X)=69 OR_ATTR
(Y,X+1)=69 OR ATTR_( 2
¿AT ¿19;
CÓDE SCREENS
EN PRINT INK 6;AT 1:
TO 30: NEXT
“: "IF CODE SCREENS
EN ER Ea NES 0 P>
4 nivel=588: GO TO 3
20 1]
7: GO TO 6
3060 REM + NIVEL 4 *%*£
PRINT INK _S;AT 0,0;*"P
¿PUNt; INK_6;AT 0,12; "UID
INK 4;AT 0,21; "RECORD:
ar , CT
$"
321 PRINT AT uzó ES ys.
33%. NES e de” INK 4); Vvvvvww
324 bRINT AF S,14: NK_4;" E
INK 3;AT 4,17;" ¿AT_3,17;"8"
"825 LET nivel=508 ink=1: L
390
INK ink;AT 4,17; "E"¡A
PES
876 er inK=ink+1: IF ink=S THE
PRINT AT 29,1
15;"0;AT
1 E 40028
,16;"9";Af 11,16;"
30 TÓ 890
8908 IF_mov=08 AND x=15 AND y>7 T
HEN, 60 TO_89
91 mov=1 AND x=16 AND y>? T
HEN cd 15 $380
95 LET n=n+1: IF n=S THEN LET
MICROHOBBY 9
>
S: DRAUY 48,9,PI/2 99108 DATA 60,126,BIN 11100111,B1
9 EN TF 7070 PRINT AT_0,0;"QUE BIEN!! HA N 11000011,BÍN 11080011,BIN 1110
x= OR. f=y 5 ENCONTRADO TU “AMO” 0111,126,50
T ¿xi 1 7080 BEEP_.1,15: BEEP .1,10: BEE 9920 FOR f=8 TO 7: READ a: POKE
NK f-1,X 35 (0; P_.1,18; BEEP .1,15: BEEP .1,20 USA “b"+f,a: NEXT f
AT *: LÉT y=y NEXT f BEEP .1,15: BEEP .1,18: BEEP .1 9938 DATA BIN 006211180,BIN 00111
: 2aT £+1,x;"08 ,28 110,BIN 001980110,BIN 00190110,B1
2 4 AND ATTR (Y,x+1)<>71 7099 BEEP_.1,15 .1,10; BEE N 00100110, BIN 00190110,BIN 0011
THEN GO 7000 P_.1,10: BEER .i BEE? .1,20 1110,BIN 00011109
1900 PRINT AT Y,x;a$(n): GO TO 8 BEER .1,15: BEEP BEER .1 9948 FOR f=0 TO 7: POKE USR "c+
d 20: BEEP 1,0 f,BIN 00011000: NEXT_f
5008 CL5S PRINT_AT_9,0;"LO SIEN 7100 CLS CI 128,88,5 9958 FOR f=0 TO 7: READ a: POKE
TO. NÓ HAS RECUPERADO A. TU AMO. 0: CIRCLE INK 1] USA "4 "+f,a: NEXT f
OTRA VEZ SERA." 7110 PRINT_INK 3 "QUE PAS só60 DATA BIN ABI11000,BIN 01111
5010 PRINT AT 21,0;" :A? TU_AMO SE HA PERDI OTRA VE 100,BIN 01100100,B1N 01190100,61
T0_31: PRINT_INK 6,A Z. TIENES QUE RECUPERARLO N 01100108,561N G1126100,B5IN e111
ION MANE ERE 2 7i20 PRINT_INK 4;AT 19,0;"TIENES 1108,BIN 06111008
215": BEEP _.08S,18 Qi QUE VOLVER A LA GRUTA DENTRO 3961 'FOR f=8 TO 7: READ a: POKE
38: BEEP_.005,20: NEXT DE"; INK 7;AT 21,15;"20 SEGUNDO USA "e"+f,a: NEXT f ATA 58,126
5108 PAUSE 286: CLS ntore s" ¿BIN 11011011,255,BIN 10111161,8
Cc THEN LET rec=punt: CLS PRINT 7130 LET se 1] IN 11000011,255,255
AT_8,8; "HAS SUPERADO EL ANTERIO 7148 IF s 1 THEN BEEP 1,10: G 35962 FOR f=6 TO 7: READ_a: _POKE
R RECORD FOR_f=1 TO 40 EEP . o TO 1008 USAR _"f"+f,a: NEXT f: DATA 60,126
1,f: NEXT f: PRINT AT 10,8;"EL R 7150 PRINT AT 21, 15;sec;"_": LET 255,255,255,255,255,0 =
ECORD ES "¡rec: PAUSE 200: CLS sec=sec-1: PAUSE 58: GO TO 7140 3963 FOR f=8 TO 7: READ POKE
60 To 5 3888 CLS : PAUSE 10: PRINT INK 1 USR “g"+f,a: NE ,285,
si1a CLS : 60 TO 8 ¡AT 18,10;"F S “5 INK_2;A 255,255,255,255
7000 LET punt=Punt+1080: PAUSE 2 + 10,14; "E 9964 FOR F=8 TO POKE
0: CLS : BEEP .1,10: BEEP .1,11 18 *L USR "h"+f,3a: NEX 55,25
BEÉP_.5,26: BEEP .1,20: BEEP .1 A"7_INK S BIN 01111118 ,BÍN
¿21: BEER .5,30 5;AT' 18,1 có811083,98,8,8
7819 PLOT_0,87: DRAW 255,9 aQ6l PRINT 2965 FOR f=8 TO S POKE
7020 PRINT ÍNK 4AT 10,5;"888 UTA <<";pa USA "i"+f,a: NEXT f: DATA BIN 10
9,8,98,0 a O eon ara 34v2 BEE 009001,BINÑ 10060001,BIN 108098081
f=0 .P=8 TO P .3,10: B ,255,BIN 2901,BIN as081,6
PRINT INK_n;AT 21,10;"LO LOGRA SA UNA TEC iÑ 16000081 288 EL
STE!L!": NEXT On: NEXT _f FOR n=1 39 F f=0 TO 7: READ_a: POKE
7049. FOR 121 18.30 STEP_2: BRINT BEEP .01,n Ús j NEXT f: DATA 60,BIN
AT 10,1;"0": PAUSE 2: BRINT A 30863 IF INKEYS= 21011 IN 10111111,BIN 10111
9.f+1;0",AT 19,£,% (1 BAUSE 2: 3 111,61 11111,BIN 16111111,81
PRINT AT 10,12; "OQ"¿AT 9,f+1; 3884 GO_TO nivel P 1 E
BEEP ,005,18: NEXT f: PRINT AT 3988 CLs IF vid F a POKE
19,31%" =0_ THEN STEP_-1: B k
7056 BÉEP .1,10: BEEP .2,10: BEE EÉP .01,f PRINT AT 10,1 5 5
PESAS a; "sÉ A -20: FOR So 2
7068 'CL5S : PLOT 188,0: DRA a co TO sena E
¿ DRAY_S0, 2: DRAÚ 4,60: DRAL EP_.01,f pr
0,2 aw 8,6 J 2 f=20 TO 8 STEP -1: B paa
O O f: PRINT AT 10,8 10,
50, ROf=1 7, PR F
7965 DRA 0,5 Sia dl > el Ae 8 m
DRA 0,58: DRAU ¿9,= a
,>50; CIRCLE 110,110,8: CIRCLE 1 1
d0.112,3; CIRCLE 198,110,8: CIRC ,
E 138,112,
7866 CÍROCLE 124,95,5: PLOT 105,8
SU MEJOR
21398] [01
¡Felicidades! Acaba de encontrar el mando de juego para e DISEÑO ERGONOMICO
ordenadores personales y domésticos con mejor relación
calidad-precio del mercado. + LARGA DURACION
La acertada decisión de muchas personas que como e SEGURIDAD DE MANEJO
usted, han comprado JOYSTIK Il demuestran que
el estudio diseño y larga duración que ofrece, no e CABLE EXTRALARGO
tiene comparación con ningún otro mando del mercado.
e
VENTOSAS ADHERENTES Y
MAXIMA COMPATIBILIDAD y AN Aci
as.
Y.
7 A dl si deseas más información,
IDEALOGIC: Y ; dirígete a tu establecimiento habitual o:
ESPECIALISTAS E
EN EDUCACION E INFORMATICA
Dep. Marketing
Valencia, 85 - 08029 BARCELONA
Tel.: 253 86 93 / 89 09 / 74 00 / 90 45 d o AO) TES SANA” SNA
Mariano Cubi, 4 Entlo. Tel. 218 34 00 - 08006 Barcelona
10 MICROHOBBY
La ciudad de las Sombras
NIGHTSHADE
Ultimate
Videoaventura
Importado
De repente, sin que
nadie lo esperara y
olvidándose de aquellas
largas campañas
publicitarias —a las que nos
tenía acostumbrados antes
de que saliera el producto—
Ultimate acaba de lanzar su
última obra. Y como ocurre
en el mundo del
espectáculo, nos hemos
apresurado a asistir al
estreno.
Antes de abrirse el telón
vemos la típica
presentación de rigor y,
como todas las demás, ésta
también se encuentra
rodeada de un halo de
mágico misterio que lo
envuelve todo. Una casa
medieval se muestra
impávida ante nuestros
ojos, entre sombras, con
extraños símbolos de
brujería colgados sobre las
ventanas. Estamos en la
larga Noche de las
Sombras.
Se abre el telón y tras la
melodía orquestada que
nos anuncia el comienzo de
la primera escena, aparece
el protagonista. Allí está,
solo en el centro de la calle,
mirando a su alrededor. De
repente, un desfile de
extraños seres empieza a
pulular alrededor nuestro:
pequeños monstruos
cabezudos, llamas con vida
propia, una especie de
luces destellantes y figuras
fantasmagóricas, componen
12 MICROHOBBY
la nutrida fauna nocturna.
El objetivo, acabar con los
enemigos de la humanidad
antes de que sea
demasiado tarde. Son
cuatro y están
representados mediante
unas figuras situadas en la
parte inferior derecha de la
pantalla. Enseguida los
conoceremos, su presencia
domina la ciudad. Están ahí
detrás de cualquier esquina,
o en el interior de una de
las mansiones de la ciudad.
Nosotros tenemos que
encontrarlos y destruirlos,
pero la tarea no es fácil. No
son seres que se les pueda
derrotar de cualquier modo,
sólo existe un arma a la
que son vulnerables, y por
supuesto, sólo sirve para
acabar con uno de ellos,
pero como hay cuatro,
tenemos que averiguar cuál
es la que afecta a cada
personaje.
Ocurre curiosamente que
cuando recogemos algunos
de estos objetos
parpadearán en el
momento que se encuentre
cerca el enemigo, al que
puede destruir.
A diferencia de otras
producciones de Ultimate
aquí nuestro personaje
puede disparar a sus
enemigos. Para ello hay
repartidas por la ciudad
Una serie de armas de las
que es posible disponer en
cualquier momento. Se
pueden usar como defensa
contra la corte de
monstruos que nos
acechan, pero nunca contra
los cuatro enemigos
principales, porque como
ya hemos dicho, éstos sólo
son vulnerables a un tipo
de objeto.
El número de vidas se
encuentra señalizado
mediante unos muñecos
que van cambiando de
color, al igual que el
protagonista de nuestro
arriesgada misión,
asistiremos al final de las
fuerzas maléficas de la
noche que desaparecerán
para siempre en lo más
vitalizadora que encontrará
en algunos lugares de la
juego que va tomando
diferentes tonos según se
va debilitando su energía.
También puede recuperarla
recogiendo una pócima
Si después de todo
conseguimos completar la
profundo de las entrañas de
la Ciudad de las Sombras.
Entonces, al igual que en
los cuentos de hadas,
volverá a lucir el sol.
MICROHOBBY
Originalidad. Se ha cambiado el tema, se ha modificado el tratamiento gráfico, se han creado nue-
vos personajes, pero no se ha conseguido que el producto sea original. Sigue dentro de la misma
línea de juegos anteriores.
Gráficos. Aquí, una vez más, Ultimate sigue marcando la pauta. En esta ocasión ha cambiado la téc-
nica de la perspectiva, ahora son los objetos los que se mueven en relación al personaje central.
Además utiliza tres colores.
Sonido. Las melodías que ya vienen siendo costumbre y algunos efectos sonoros.
Valoración. Muy bien, con muchos detalles de buen gusto y con bastantes mejoras con respecto a
otros programas. Sin embargo, hay que reconocer que Ultimate debe cambiar y pronto, antes de
que se le agote la inspiración.
MICROHOBBY 15
14 MICROHOBBY
Ss? YNINOYA ODIAOD
*08-Z [9p UQ199N.ISUL SP SOJRUIJO Y *G LANBIS
S3INO1III910
0 S0LGa
SINOIIIIYTA
0 SOLva
NOIJV43dO
30 091009
NOIIVA3dO
30 091003
5013130 041909 30
S3NO13I3410
D S0Lva
S3NO1II3910
0 S01Ya
NOIIYY3dO
30 091009
501310 S341 30
S3NO1993410 Et
0 SOLO
ecal CAA
30 091009
5013130 $00 30
pr seeeid IANEA
30 091003
314
ob
314
sel
214
ol
ag
sel
SINOIIINYLSNI
2148
sel
2148
ol
214
se]
SINOIJINYLSNI
214
el
314
10]
SINOIJIINYLSNI
214
se]
013130 0705 NN 30 SINDIDINYISNI
“eoidy u9I99n4]sur
eun ap (soduu. ep euwelb
-e1p) eures4Bouoso ¡a Jergarde
epand es 9 VENDIA el U3
"sopunBasoJo
-1u 980 Banp Á Tojal ap soja
-19 g eejdu “enouau ua e1n]
-119s8 O 21399] ap uoroeJado
eun se erjouau ap ojo19 un
"sopunBas
-OJOJU y |'L PIMP LIN OJoJO 19
anb 0 10d '(opunbas ap sew
-1s9uo¡u) sopunBasoJou
670 2JUawWepeuxolde eJnp
fojas ap ojo1o un :foja1 ap soja
-19 y edn9o | eumbew ap
Oo1o [3 “Ofeq Jonu e eo0j09 as
JOPesa90.1doJ91u J9p Ly eyed
e] “¡eno ¡a ajue1mp “ugioesado
9p oBIpgo jep epanbsnq ej e
ajuepuodsaJjo9 eumbeu ap
OJo19 Je LIN, PUJWOUIP SS
“loja ap
(sosindu) sojoro so.en eajd
-wa eumbeu ap ojoo epeg
“¡ejuawaja uoroesado eun ez
-89J JOPesa9oJdoJoJu ¡a ¡eno
19 ajue1mp odua1 ¡a sa eumb
-2u ap ojoro un “eumbeu ap
soJo19 ua 'z8n ns e apinpqns
9s UQIDINAISUI AP OJDID |3
-e)
-a¡duwo9 u9199n4]su1 eun ejno
-ale JOPesa9oJdoJon ja pena
19 ajuemp odula] ¡e u9/99na
-SUI SP OJD PUIWOUIP SS
NOIOINHLSNI 30 SOTO A
VNINOVN 34 SOTO
"saJOoJJa e Jebn| Jep eup
-od anb o] *ofeqea] ap eiouano
-91, NS SP ayu ¡e JOpesao
-01d 0914 |e J8A9]| Jeyao esed
'SOPeJa/0] y SO| 9P Z9A US ZHIN
Se ap fojas ap ¡euas eun opez
n ey as unosds ja uy
“ugronoale ap pep
-10OJ9A JOÁBW eun anbisuoo
38 AND 0] UOI 'ZHIN y eisey
ap fojas ap sajeuas ayuwpe
enb 'v98-Z epeumousp eu
-19pou Seu UQISI19A BUN OPez
n ey as unioads je uy
:9]uanb
-Is [a sa ¡euwuou OjeuIJoj 13
“JOPe¡quesus ¡a ajuswepuny
-0Jd Seu a]e1) anb ojnydeo ¡a
e]sey souwaJlJajaJ sou seso e
Aliduino uajans anb sew,uu
sejf6a1 seun Aey eldujais
oJad ':opibaja JOpejquesua
19p UQ19uny ua OB]e Jeea Up
-and sixeJuIs ap seuJou sns Á
UQ!99NJISUI B| SP OJBULO) [3
“uez¡¡ea1 anb ugioesado
e| usuljep enb sesa¡Bul seq
-ejed se] ep semjenaqe uos
“08-Z JOpesaooJdoJoIu ja es
-ed Opez1]1]n uey as anb soo1u
-99]0u3U SOBIPQ9 SOT 9]UaNJ
ewelBosd ja souquosa anb
[a ua ¡anbe sa oo1joquuis ofenb
-ua] [9 “pIeproDas as ou0g
o>oquis alonBua] ua
uO0N3N4SUI ap SOJDUIJOJ
“wn103dg un ap Jauodsip
OLesa93u sa ojos 'osano ajse
11nBas esed anb o] Jod “Opejg
-Wesua ap pepisaoau us JOp
-Ruapio ¡a US JIONPONUI UBAP
-od as 'sowap anb sojduwala
so| SOPo] Á uO199n4SU! Ppeo
«OUBU E, Je/¡quIiesua ap euJo,
e] aJjej9p opo] u09 sowajeo
¡pul '0]ue] Sexual :seJoJoa]
sosanu e souwepuauosas
“e10ye 9psap anb ',g SNID,,
je “'wn1osdg ¡ae esed oyuosa
ey as anb Jopejquiesua Jofaw
[9 SOWEJ9pIsuos anb ¡ap ugio
-ezIyn ej ajjejep us sowquo
-S9P “OSINI OWISIW 959 UY
“¡Ope¡quiesua ewe1Bosd
un ap Jolajsod uQI9ezIjyn
e] eyoe, Á “yaquiassy [ep op
-unjoJd seu oJuaJuoouo9 un
euor91odoJd 0359 anb eÁ “«ou
-2u e» Jejquiesua e oJawnid
Japualde a/quajald sa 'oyoay
20 “esolpa] ajuaueasooxa
eynsa/ ou Joqe] ej *o61e, Ánuw
se Ou euwesbold ja ¡s aqua
-¡enuew “eumbguw OoBipoo
e OJJIonpen] Á Jajquiessy ua
ewe/bold ja 1Iquosa ajqisod
sa 'eumbeuw obIpgo ua una
-o9ds ¡a Jeziyn 1apod esed
JOpe¡quiesua un J9ua] oyes
-299U SA OU 'OPe] OO JO
eun
ni esa e epeuwej eun aoey
9s 'JOJJ3 SP UQIOISOH RP] APSIP
Á ousoja1 un uos opueu
-19] UQID89YIPOu1 e] ea a1gos
298Y 9S 'SONBUIQ SOJAI E PP
-JUY9p euwe1BoJ4d jap euoz eun
efep as 'omedse seuw ednoo
UOQ!DeoyIpou e] is osn¡ou! “eq
-anid e] 4mbas Á ajuauej9as
-Ip Je: 'OwW apand es eue1b
-01d ja OpeBieo esa apuop
eLuouaw ap sauoioisod sej
Opuar90u09 “40113 UN euano
-u9S as euwesbord ¡op eqanid
B| aJUBIMmg :Sayoed “z
*e]unsip UpIdeJado
eun ejmnoele ased anb zan eu
“1xQ1d e] anb o] uo9 eoyipou
9S UQIDINJISUI ESA “SJUIWIOL
-ajsod 'uoroeJado eun ejno
[ 199n.¿su1 eun Jod
uesed eun eun Jod uesed
enb zan eJaund e7 :sajqeo
powojne sewe1B0lg “Ll
:o¡duiafe Jod
“oyuanuI9ou0os ajsa olesao
-9U Ua9ey anb uoroeue1Bold
us seolusa] seunBje ua]sixa
“sewsepy “Jefleqes e euezad
-wWa JOpesa901doJou ja enb
o| u09 uQroIsod esa e eje]
-|es as Á sauo!o9n4]su! sel ap
S3JO|BA SO] BLIOWIU Y] US Ul
-a]J9uw as ¡eno o] 109 “sauojo
-on4sul sesod esed ojopueb
-J89 Je]se ajemb as o JOpelq
-wesua uanq un ap auodsip
9s alduwa¡s OU OJ9d “euIoop
-exay e oleuIq ep sojopues
-ed Á sobIpog9 opueosop
Je]s9 ap eueS euanq “euy
YWNINOYIA O9IUOD Z£
e ordi9ud ap ewe1BoJd un eq
-11989 ÁJOpe¡quiesua uanq un
eBua] anb ¡a 'oBan] apsag
¿ou ¡eno Á 0108 4e]sa anb au
-91) q a3Nb J390UOI AP OBUA]
pepisad9au 2nb? npen e
BA o| au anb oo ubeu JOpejq
-wesua un 06ua] 'Y319N3S
-Sy oomoquis afenbuaj ja
ua pueJ1B0Jd 1 JIqUISsa e ÁOA
:soujejunbald SOWBIIpod
—ouabpar oBipos
y J930U03 >p p.pIsa3aN
“Z-y VENn9IW 194 "epejunde
eBua] ej eÁ omsibol ajse
“uoI99nJ¡sul ajuambis e] Joa]
e eAea opueno anb esed “uqio
-9NISUI B| ap sojej9o sajue]
-S9J SO| OpuaÁa| ea seua
'pepnueo esa ua Dd 0MsI6
-9J 9 Jejuaual9u enb sua]
OJ9s ojuawou asa ua 'ednoo
sojajo0o sojueno aqes “uQ1o
-eJado ap oBIpgo ¡ap uqrouny
us 'aa] e] opueny :uemnoefe e
U9199N4]SU) BUIXOId B| ISO SP
-UOp euouau e] ap u9IDoaJIp
ej eoppur enb 94 onsifas un
2491] JOPpesa901doJoJu ja anb
eJepJo9aJ as o¡1ouas Ánu sy
"Sejunsip sepnyBuo, oJeno
J9ua] uapand sojse opueno
Sau0I99NSUI Sp "SOUA]| SO]
-a]00 ap enas eun opuaÁa] Ba
JOPesa901doJ91u [9 OWOQI J9A
se esoino Ánuw esos eno
"SO1)S1691 SOYOIP SP UQID
-uny ua ugioejJado ap oBIpgo
a ua ajqerea exo Á ely ayed
eun e1qey 'o]ue] 0] JOJ opesn
OJ]SIBaJ jo vas erouaJaJIp eo
-1un e anb ap Jesad e 'uQ1oes
-ado ap oBIpoo ¡a ua u9r99n
-Ssu| epeo esed syq ap ajuaJa]
Ip UQIOBUIQUIOO PUN 3]SIXG
12 YNINOYIA O9IGOD
2p UQ19994/p eun e «sejunde»
ejed osaejund ouwo9 ez
-In as 7H 0.1SI691]9 0se9 a]sa
U3 “1H O4SIBa1 ¡a JOd epe]
-unde eruouwaw ap uQIo9alp
B| 9p OPIU3JUOI 9 UOD Y 01ISI6
-91 |9 e6Jeo» :eoyubis ano
Jas eupod ojdueafa
un “ojep ¡a Jebieo anb Aey
¡eno e] ap uned e uQIoJaJIp
OUI09 ZI YN as aqop o.sibBas
un ap opiuajuos ¡a “ojuarweu
-0199911
ap euo, ejso uy
OLO3HIONI
O.LN3INVNOIDO38I0
"sope]
-|[nsas so] aqioas anb ja ald
-U9IS Sa (10PB/NUINIB) «y» 04
-sIBa, [9 “sg 8 ep seonouue
sauoloeJadq sej ua “ojduafa
JO “uQIDeJado ap oBipgo ja
¡du! p]s9 SOJep so| ap
uQIdenys ej 'oseo ajse uy
OLIOMANI
OLN3INVNOIDO38I0
“«¿8, ONSIBO1
19p opluazuoo ¡a ,), 01siBas
[e ua Jebeo» :eoyrubis ano
:UQ/99N.ISU! e] Jos ejipod
o¡duafa uN SHA SO] AP 0353, ja
sopeJayeu! opuaroaueued
“uQI99NA]SU! e] aJaijas as 0
-si6aJ 9nb e ueoyroadse anb
syq soyajo Áey “ugroeJado ap
soB/p99 so] ap soyonuw uy
SOy.SID38 30
O.LN3INVNOIDO38I0
sop e “¡duioo ue oJajua
opesn soipul
as anb alduals «yqW4» Á «Xt:
04siBaJ1 ja ao]yn es anb ad
-wals «yga» se ajAq Jaunid ja
“sajAq sop auduais aus! u91o
-eJado ap OBIPoJ ¡3 “enowaw
2p uQI99aJ1p eun e Jejunde
eJed 'ajuaipuodsaJJOo eoIpu;
04]siBa1 [ap ¡enjoe opruajuoo
¡e euns as anb 'sop e ojuaw
-ajdwos ua ojuslwezejdsep
2p OJajua un susyuoo uo
-esado ap obIpoo ¡e anbis anb
sojep ap ajíq ¡a “ojuajweu
-O/99941p Sp Buo, e]sa uy
OOVX30NI
O.LN3INVNOIOO3810
"BIO LWJaL ap
UQI99941p JaImbjeno ua euoy
¡en61 ap Janoo “Dep se sejq
-eo/qnaj 19s uspand seunna
se anb o] uo9 “sonejas so]
-¡es Jenjoaja ayused ojuaju
-BuolDo9J1p ep opow ajs3
z e Ojuauwa¡dwoo ua oJajua
(oayeja oyes) ejAq un
[8 ua epeuaoew
-/e ¡enjoe uo1999.11p ej e euns
es anb 'sop e ojuawajduoo
us 0Jajue un ou09 eajdwe as
ugioeJado ap obipoo ¡e anb
-1s anb ajAq ja 'oseo a]se uy
OAILV 138
O.LNINVNOIDO38I0
:sajuanbis
se uos Á 'osn seu ep seunna
se] e1ed NOY e] Jod sepezi
-1¡n Uejuan9ua as sauol99as
-Ip sejse 'uwnioadg ja uy
“aj4q
ojos un opueajdwa seunna
se]se e Jeuwe| opand as euwoj
e]s9 ap 'ajuan9a,, seu osn ap
Seuni se, ueoojo9 as apuop
selqisod sauolgoamp oyo
AeH 0139 eulbed ap UQI999.1p
eun e opide1 oyes ap sauoro
-9N4]Su! Seun aus] 08-Z 13
OY39 VNIDVd 30
OQId ve OLN3INVNOIDO38I0
"euouau ap
sajAq sop eednoo “ajuaweo
-169] 'anb ajue]suos eun uo
alqop ossibas un ap ebieo
e] Jas elpod ojdweala un
osad seu ap oJajoo
"oye uSpio ap ¡a 'opunb
-as 19 Á “ofeq uapio ep ojajoo
19 se ajAq Jawnid ¡a 'sayq sop
edn9o opuelado ja anb on
-/es '10118]ue ¡a anb ¡en61 s3
¿OQION3.1X3 O.LVIGINNI
OLNJINAVNOIDO38I0
“ugroejado ap 06
-IpQ9 ¡e an6Bis anb aj/q ja sa a]
-UR]SUOO B| SPUOP 'AUEISUOD
eun uo9 Jopejnunoe ja 1e6
-Jeo Jes ejipod ojdulele un
EIA
prelcLo DE RELOJ
M1
BUSQUEDA DEL CODIGO
DE OPERACION
=——CICLO DE INSTRUCCION
M2
LECTURA DE
MEMORIA
M3
ESTRUCTURA EN
MEMORIA
Figura 6. Cronograma de un ciclo tipico de instrucción.
TIEMPOS DE EJECUCION
Como el lector habrá dedu-
cido ya, es posible calcular el
tiempo de ejecución de una
determinada rutina en C/M, a
condición de conocer el nú-
mero de ciclos de reloj que
emplea cada una de sus ins-
trucciones.
En lo sucesivo, cada vez
que veamos una determinada
instrucción, indicaremos el
número de ciclos de relojque
emplea el microprocesador
para ejecutarla, así como el
número de veces que accede
a memoria (ciclos de memo-
ria).
Como ejemplo, veamos lo
que se tarda en cargar el re-
gistro “A” con un número. Po-
demos utilizar la instrucción:
LD A, tt FF que carga el núme-
ro 255 (FFh) en el acumulador;
esta instrucción accede 2 ve-
ces a memoria (2 ciclos de
memoria), una para buscar el
código de operación (4 ciclos
de reloj) y otra para buscar el
número que ha de cargar en
“A” (3 ciclos de reloj); lo que
hace un total de 7 ciclos de
reloj, es decir, unos 7 x0.29=
2 microsegundos. Este ejem-
plo ilustra la enorme veloci-
dad del código máquina, el
microprocesador es capaz
26 CODIGO MAQUINA
de cargar el acumulador me-
dio millón de veces en un se-
gundo.
Supongamos que quere-
mos sumar en el acumulador
una lista de números, y usa-
mos el registro HL para mo-
vernos a lo largo de esa lista,
el bucle podría ser:
El tiempo de ejecución por
cada pasada, seria de 25 ci-
clos de reloj, es decir 7.14 mi-
crosegundos. Con este bu-
cle, nuestro ordenador podría
sumar 140000 números por
segundo. Por supuesto, este
pequeño bucle no es operati-
vo, no existe condición de sa-
ida del bucle, por lo que el or-
denador se quedaria eterna-
mente atrapado dentro de él,
y por otro lado, se produciría
un rebosamiento en el acu-
mulador, ya que el resultado
de las sumas excedería su
capacidad, a menos que la
mayor parte de los números
fueran ceros. La única finali-
dad de este ejemplo es mos-
trar la enorme velocidad de
ejecución del código máqui-
na.
Para calcular el tiempo de
ejecución de sus rutinas, su-
me los números de ciclos de
reloj de cada instrucción y
multiplique por 0.29 para ob-
tener el resultado aproxima-
do en microsegundos.
Modos de
direccionamiento
En la mayor parte de las
operaciones, el Z-80 utiliza
datos almacenados en sus
registros o en posiciones de
memoria. Las formas posibles
de indicarle la situación de
estos datos, constituyen los
diversos modos de direccio-
namiento.
DIRECCIONAMIENTO
INMEDIATO:
En este modo de direccio-
namiento, el byte que sigue al
¡o de operación en me-
, contiene el operando.
uno o dos bytes
Se]so Sepo] 'sopeasap eje]
-ued ap sojeuo, so] “4ezign
e Jamon asamb as anb ula
-euwJojur ey “auajgo aamb
es enb uoioewojul ej “ou
-odsIp as anb ap uoropuIJojul
e] '1ez1ea ajamb as anb 0] ap
!OJUYAP e] S3 /BUO/9UN) SIS
-//Uue eue|] as ¡euorsajoJd eo
y910jul e ua anb 07 :euwe16
-01d |9p Ojuanwesjuejd (e
“YINDIS V SOSVdA
"RusIu e] so
1inBas e eBojopojau ej :sooy
-yua¡o seuwaqold ap ugion¡os
e| 0 eses eun ap pepiliqejuoo
e] Jena] owo9 “obaní un sa
euwe1Bo4d ue] ¡eno 0] Jod “op
-euapJo un ap Ouap sauolo
-9n.9SU| Sp ajuanoo eun ua
Jez1¡eaJ apand as anb o] opoj]
e eoJeqe euwelbBold ojdaguoo
13 'ajuambis ¡op uQIoezeas
e] e19s 198, seu “sosed sojsa
3p UQI98Z/UEBIO e] Las epeJie]
-ap su ojueng “eweJBod un
3P UQ/98Z1/891 e] BANUYOSp JOd
1ep esed ¿Bas usqop es anb
sosed ap alas eun ua]six3
——ounbBod
UN SP UQNDZIDIY
:01n3n, ¡a us ¡yn Ánus
BJas sou amb ugroejuauno
-Op 'ewe1Bold epeo sp uoroe]
-Uuaunsop euenq eun enbas
-u09 as Á edelb uo sepisoo
o ejedueo eun ua sejun/ up1ep
-Jen6B es 'sejqe] ap o sodueo
ap “ejejued ap uebBey as anb
sOYasIp so] seu “upIoeuo,
-U| B]sa epo 'o¡nydeo ajsa ap
¡e sauoloejuao seunb
-|e SOWAJBp ¡eno ja agos “eu
-eJBIuebio ap UQIOBZIJeas e]
e Á sopojau so]se e ordiould
un apsep asiequinjsooe
enb ey “opuamunsoy
“9Juejope sow
-eupjes 'ewesBold onanu jep
Seon]sua]oeJeo se] e obje sel
-1ejdepe “oyonuw ouwo9 o se]
-Jed sejse ajuawyejo] Jeidoo
e 9sJeyuI] UO9 “ojue] o] Jod
“0.130 9p Se] e sajuefaulas o sa]
-en6B1 sauoroeJado ewelBord
un Ue Jeusaoau ap oseo ja
e19uan9al, UO9 BP 9S “JLOYIP
-0U ap 0]ue] o] JOd “1apuajua
9P 1198, Seu se seunniqns ap
eJnjon43s8 eun 'sajdnu uos
sefejuaa se] “ewelSold ¡op
2.Jn]9N4]89 ap euwa|qoud un ap
e]e1] as anbiod ojuawow aj
-se ua ajueyoduu se 0]s30sn
ns e opuezipejuaw asu anb
Key oJad “se e apaooe es
OuQo Á USIRyY as 0UIQo sOUlas
-9A BA "seunnigns ap oajdua
Je own Jod *souaJ119J91 sou
saJquinjso9 seuanq ap ugio
isodxa e] u09 opuammbig
“epnAe uelb ep
UR9s SONeJuauo9 so] “uQ1o
-9n/]su! epeo ap anbiod ¡a
opepiajo eAey as Á ewelbosd
19p aued eunbje Jeoypou
sowesanb Á odula!] ¡a ased op
-ueno 'oloedsap seu 1 090d
-we] oJad “sonejuewoo ebue]
0919quuis ns anbiod ojnjosqe
ewe1Bou1d un seu glednoo ou
anb 1199p aamb ¡eno o] 'euinb
-pu ap obipgo ua eue1bold
[a ajamuos opueno eJoub
soj Jopejquesua Jaimbjeno
:9]uenj ewesbosd o o9oquis
obipo9 ja ua ¿JeBn¡ uednoo
OJOS SOLIeJuauWoo so7 “sello
9/jue sopejeolaju O uQo
YWNINOYIA O9IAOD 0€
-9N4]Su! epeo ua sojlauod ep
eJaueu eun Áey adunals ¿sol
-e]uauo9 Jauod se y318N3S
-Sv ua euwelbold as opueno
aJqunjso9 eusnq eno
"epeJoyas U9IoeuI
-J0JU! 94JU3NIUI 10]99] 9 AND
alqisod sa 'soses sounBje
us anb 0] Jod “epide, eynsuoo
9p ¡enuew un owos oJnjny
19 us Jas epend “¡ey ouo9
9p seuape 'osino a]se anb ap
-uajald as “ajuepunpal ayns
-9/ OSe9 un6bje us anb ap Jes
-9d E 1198, 089998 IP Opojgu
un uo “eueseoau uQioeu
-0JUl e] epo] sauajuos aqap
UATBNASSV 9P ¡enuew un
“uQ199N4ISU| Bpeo ap sojo1o
SO| Blouau ep Ja90u09 Ol
-esa99u ess anb J199p ajamb
ou 0]s3 'ueBua] as anb sap
-episedau se] ap ugiouny ua
“sopidg, seu Jas o sauoroisod
souaw Jednoo ayue Baja
enb ?1qey soses soun6]e us
Osn¡9u! “euowauw ap sauoro1s
-od soua3u adnoo anb ejjonbe
o “fojas ap o eumbgu ap sojo
-19 souau ebua] anb ejjonbe
baja 2q9p es opeynsas
ouwsiu ja ueSuajgo anb seu
-0/99N.1SU! SOP a]ue “ojdwafe
Jod “ojualupuas ouXgu [9
J8Des eosep es Is sajeinadsa
SOPepIn9 aambal YI 18N3as
-Sy ua uqioeuweJlbold e7
"08-Z Je oseo a]se ua
“1O0pesa90.1doJo1u ja JOd a/qip
-Uuajua eunbgu ap obIpgo ue
SOPHuSAuOO URSS AJUSVIJOL
-9]sod anb onensn ¡a Jod sajq
-¡puajus soBIpgo ap ajes eun
JIQUOSO 'SO 0189 'YITANIS
-Sy Us uproeweJbold ey se
9nb Jaqes ap sauoro¡puoo ua
eÁ e]sa as o¡nydeo ajse uy
4319WISSV N3 NOIDVWV490Yd
definiciones se deben hacer
con el máximo detalle, como
si se pretendiese explicar a
otra persona cuál es nuestro
problema y cómo nos gusta-
ría que nos lo solucionase.
b) Viabilidad de resolver
el problema con un ordena-
dor: Lo que en informática
profesional se llama análisis
técnico u orgánico. En este
paso se valorará la posibili-
dad de resolver el problema
con el ordenador de que se
dispone, asi como de la pel
feria a nuestro alcance (im-
presora, microdrive, etc.). Se
definirá toda la información
del paso anterior como datos
entendibles para el ordena-
dor, indicando en qué código
irán, cuánta memoria ocupa-
rán, en qué lugar han de al-
macenarse y cómo se proce-
sarán; lo mismo para los
ños de pantalla. En este paso
es donde se debe decidir qué
procesos se hacen por medio
de subrutinas, y, como curio-
sidad, si el programa se hace
en BASIC o en ASSEMBLER.
Cc) Realización del pro-
grama: Es decir, la programa-
ción propiamente dicha. Este
paso se divide en dos partes:
la construcción del organi-
grama y la codificación. Estos
dos pasos son complementa-
rios, cuanto más se detalle el
organigrama menos vueltas
se da a la codificación, y vice-
versa.
1. Elorganigrama es una
construcción gráfica del flujo
o caminos posibles que tiene
el programa.
2. La codificación es la
escritura del lenguaje simbó-
lico contemplando todas las
alternativas posibles defini-
das en el organigrama.
Por supuesto, hay muchos
programadores que nunca
hacen un organigrama, pero
también hay muchos que se
olvidan de codificar una ra-
ma. En cualquier cáso, para
un programa sencillo o bien
para un programador experto
el organigrama puede no ser
muy detallado o bien omitirse.
d) Prueba del programa:
En este paso se preparan
unos datos de entrada al pro-
grama de los cuales ya se co-
nocen los resultados que ob-
tienen, contemplando, si es
posible, todos los casos. Por
ejemplo, si se hace un pro-
grama para resolver raíces
cuadradas, se introducirán
una serie de valores de los
que ya se conoce el resulta-
do.
€) Documentación: Una
vez concluidos los pasos an-
teriores, se reúne todo el ma-
terial e incluso se comentan
los problemas o dificultades
encontrados y cómo se han
solucionado. Dependerá de
lo ordenado que sea cada
cual el obtener como resulta-
do una buena documenta-
ción. Ver FIGURA 4-1.
Todo lo anteriormente des-
crito se puede hacer o no, pe-
ro son métodos ya muy estu-
diados que producen unos
buenos resultados. La meto-
dología anteriormente des-
crita es una orientación de la
más elemental; se pueden
usar técnicas más complica-
das pero que se salen un po-
co de lo que es un micro-or-
denador. Se dice que en un
programa vale todo, siempre
y cuando funcione. Si existe
un método que lleve a un
buen resultado, no sólo que
funcione, sino que sea lo más
rápido posible, que no se re-
pitan procesos, que ocupe la
menor cantidad de memoria y
que esté claro, ¿por qué no
usarlo?
Formatos de instrucción
en código máquina
La memoria del SPECTRUM
está dividida en octetos. Un
octeto es una agrupación de
8 bits y un bites la unidad más
pequeña de información; sólo
puede informar de dos esta-
dos: o está activo o no. Cuan-
do de un SPECTRUM se dice
que tiene 16K indica que tie-
ne, aproximadamente, 16:000
octetos de memoria poni-
ble, que son exactamente en
decimal 16.384; para uno de
48K se multiplica esta cantida
por 3.
Los 48K de memoria dispo-
nible en RAM más los 16K que
usa el programa monitor en
ROM, suman 64K, que son
65.536 octetos. Esto es, des-
de la posición QU de memoria a
la 65.535, que es en hexade-
cimal FFFFh y en binario
1111111111111111b y a su
vez la máxima cantidad que
se puede escribir en dos oc-
tetos.
Las intrucciones en el
SPECTRUM pueden ocupar 1,
2,36 4 octetos en función del
código de operación y bási-
camente, tiene los formatos
que se ven en la FIGURA 5 del
CAPITULO 3.
Como se vé, lo que es co-
mún a todos los formatos es
que los primeros tienen el có-
digo de operación y los últi-
mos el operando. Sobre el
operando hay que tener en
cuenta que cuando son dos
octetos el microprocesador
espera encontrar el octeto de
orden inferior en el primer oc-
teto del operando, y el de or-
den superior en el segundo,
de tal forma que al referirse al
valor de operando 7F3Bh el
ensamblador almacenará la
instrucción en memoria de la
siguiente manera:
CODIGO MAQUINA 31
memoria, siempre que un re-
gistro se utilice como punte-
ro, su nombre aparecerá, en
el código simbólico, encerra-
do entre paréntesis, signifi-
cando: «donde apunta el con-
tenido de».
También se puede utilizar
como puntero, una constante
de dos bytes, ensamblada a
continuación del código ob-
jeto, por ejemplo:
Que significa: «carga el re-
gistro A con el contenido de la
dirección de memoria
5C37h”. Cuando hagamos
estos en Assembler, normal-
mente utilizaremos una «eti-
queta» de la siguiente forma:
LD A, (ETIQUE]
De esta forma, solo tendre-
mos que definir la etiqueta
una vez, pero podremos usar-
la todas la veces que quera-
mos sin tener que recordar de
memoria los números. Los
nombres de las variables del
Sistema en el Spectrum son,
precisamente, etiquetas del
código fuente del Sistema
Operativo. El uso de las eti-
quetas se verá en profundi-
dad cuando estudiemos el
manejo de ensambladores.
En algunos casos, el direc-
cionamiento indirecto se u
za para especificar operan-
dos de 16 bits (dos bytes), en
este caso, el puntero apunta
al byte de menos peso, sien-
do el de más peso el
te. Por ejemplo:
Que significa: «carga el re-
gistro L con el contenido de la
28 CODIGO MAQUINA
posición de memoria 5C37h,
y el registro H con el conteni-
do de la posición de memoria
siguiente (5C38h)».
DIRECCIONAMIENTO
DE BITS
Un gran número de instruc-
ciones del Z-80 trabajan
ectamente sobre bits indi-
iduales de registros o posi-
ciones de memoria. En este
caso, se utiliza uno de los mé-
todos de direccionamiento
anteriores para indicar el re-
gistro o posición de memoria
en concreto, y tres bits del có-
digo de operación para indi-
car a qué bit de ese registro o
ión de memoria nos re-
MODOS DE
DIRECCIONAMIENTO
COMBINADOS
Muchas instrucciones in-
cluyen más de un operando,
en estos caso, se pueden
combinar más de un modo de
direccionamiento dentro de
una misma instrucción, por
ejemplo:
Que utiliza directamente in-
dexado para el destino y di-
reccionamiento inmediato
para la fuente. Significa
ga en la posi
apuntada por el contenido del
registro IX más 7, el contenido
del registro A (acumulador)».
Instrucciones del Z-80%)
El Z-89 puede ejecutar un
gran número de instruccio-
nes, podemos ordenarlas en
los siguientes grupos:
CARGA E INTERCAMBIO
Permiten desplazar datos
entre registros, o entre estos
y posiciones de memoria.
También se puede intercam-
biar el contenido de dos re-
gistros, o el de dos grupos al-
ternativos.
ARITMETICAS Y LOGICAS
Permiten realizar operacio-
nes aritméticas o lógicas en-
tre el acumulador y un regis-
tro o posición de memoria.
Los resultados se almacenan
en el acumulador, y los indi-
Ccadores del registro «F» se
ponen a «1» 0 a «g» en función
del resultado de la operación.
BUSQUEDA Y
TRANSFERENCIA DE
BLOQUES
Se trata de las más podero-
sas instrucciones del Z-80,
es posible transferir todo un
bloque de mémoria con una
sola instrucción; también es
posible examinar todo un blo-
que de memoria para buscar
un determinado dato de un
byte.
ROTACION Y
DESPLAZAMIENTO
Permiten la rotación bit a bit
del dato almacenado en un
registro o una posición de
memoria, las rotaciones pue-
den incluir el indicador de
acarreo del registro «F».
MANIPULACION DE BITS
Permiten tratar de formar
independiente cada bit de un
registro o una posición de
memoria, es posible poner un
bit a «1», ponerlo a «Q» o exa-
minar si es «1» o «Q».
SALTO LLAMADA
Y RETORNO
Permite alterar la secuen-
cia normal del programa para
saltar a otro lugar de la me-
moria o ejecutar una subruti-
na. También es posible retor-
nar desde una subrutina al
punto donde se la llamó.
ENTRA Y SALIDA
Permiten leer y escribir da-
tos en los ports de entrada/
salida, con lo cual se comuni-
ca el ordenador con el mundo
exterior.
CONTROL CPU
Se utilizan para controlar el
propio funcionamiento del
microprocesador, inh
habilitar interrupciones, cam-
biar el modo de interrupción,
detener el funcionamiento del
microprocesador, etc.
En los capítulos posterio-
res de este curso, se irán
viendo detenidamente, una a
una, todas las instrucciones
de cada uno de estos grupos
y la forma de utilizarlas en
nuestros programas.
Antes, en el capítulo si-
guiente, se verán los concep-
tos básicos de la programa-
ción en Assembler, y las for-
mas de almacenar y ejecutar
nuestros programa
go Máquina.
CODIGO MAQUINA 29
SONIMAG-85
nivel 10
stand n:5
N
SO” SIEMPRE LOS PRIMEROS EN TENER LO ULTIMO
$ | iS
La: / circulo de¡soft; |
A y
Sr
P.? de la Castellana, 268, 3.” C. 28046-MADRID.
Tel.: (91) 733 25 00
ms. JUELOSO
PARA LA MENTE
“BEATTHIS':
Jeofírey Thompson
WORLD KARATE
CHAMPION
SS ya
QUIGKSIIVA bo ASA
28K EcTRUM E /
SPECTRUM 48K
A
Highway Encounter
2.900 ptas. b á
además ] :
Juggernaut 2.900 ptas. a >
y $ 2 Peel SPECTRUM 48K o A
, us m7. as.
Spectrum That's the Spirit ; Pp
29
Elite (novedad) 4.100 00 ¡nes ES
Decathlon 2.100 Squash (novedad)______ 1.995 z PARTS1+2
AirWolt______________ 1995 Super Star Challenge 1.995
Brucelee___________ 2100 Everyone'sa Wally ______ 1.995 , > TURBO
Shadow Fire 2100 KongStrikesBack____ 1.995 Exploding Fist "LOAD
One on One (novedad) __ 3.100 MatchDay__________ 1.995 2.900 ptas. COMMODORE 54
A Y A 0100: OR se 705 pois
Profanation________ 2100 SpyHunter__________ 2.100
Deusex Machina (novedad). 2.200 Boxing (novedad) ________ 1.995 RedArrow___________ 3.100
The Dukes of Hazzard 1.795 Snooker____________ 1.995 Dambusters__________ 2200
Gran National __________ 1.795 Tapper____________ 2.200 A View to Kill (novedad) __. 3.100
Sabre Wolf___________ 1.950 Raid overMoscow______ 2.100 Basketball (novedad) _____ 2.300
Alen8z_______ 1950 BlueMax___________ 2100 Pole Position (novedad)__ 1.900
ORTO RWUIGOE=E: == 2357 1:980./ Zaxxon: 0 1:2:400, Dragontofe 1 001: >! 1900:
Knithlore_____________ 1.950 Steve Davis «Snoker» (billar) Gremilns: ERE A AAERAROSEDO.
Buck Rogers __________ 2.200 (novedad)__________ 1.995 Combat Linx (novedad) 2.100
¡UN INCREIBLE REGALO TT DE PEDIDO *
POR CADA PROGRAMA!
l
Recorta o copia este cupón, o pide tus programas por teléfono. e!
Deseo recibir a vuelta de correo el(los) siguiente(s) programa(s). j
TITULO P.V.P. ORDENADOR
Este magnífico reloj digital de cinco funciones puede
ser tuyo si pides tus programas al Círculo de Soft.
Si tu compra es de dos programas te
obsequiaremos con un conmutador
TV-Ordenador... y ambos regalos si pides tres
programas.
1
á
I
!
|
J]
. O Contrareembolso O Giro postal hm Sa adjunto a «Microamigo, S. A. y b
O Tarjeta VISA n.? _____ Fecha caducidad __________ Para más am ién en
; ON y ommación EDITADO Y DISTRIBUIDO POR: emtranias
]
]
|
|
1]
ber ES dirigirse a: MNWNO GAMES ESPAÑA, S./A. mejores Esta-
a ES Es
Teléfono Edad
Mariano Cubí, 4 Entlo. Tel. 218 34 00 - 08006 Barcelona blecimientos
por Billy Puertas
cTODAVIA
NO HAS CONSEG
TU HYPERSPORTS GRÁTIS?
verdes diablillos huyen aterrorizados por el sistema
de ventilación.
Abro la válvula y enciendo el soplete. Ahora he de )
soldar la chapa para evi
tar que puedan escapar por el
agujero. Lo siento por Gizmo; espero que encuentre
otra salida.
Bajo del tejado y me encuentro de nuevo en laesca-
lera. Yendo hacia el Oeste por el pasillo, me encuentro '
con una puerta que en principio está cerrada pero... l ) MICROH 5
Y =] 5 OBBY
Estoy en la puerta del cine COLONY. Ajuzgar por las
¡un momento!... ¡parece que se muev
o l SEMANAL
| Itelo regala!
' o
huellas que conducen hasta allí, seguramente hay en
su interior montones de Gremlins. Me dirijo hacia el ci-
ne y luego al Sur. Empiezo a proyectar antes de que
esas horribles criaturas invadan la sala. |
Voy al Norte hasta encontrarlos grandes almacenes
y entro en ellos.
Estoy en el hal
salvo, me ha abierto la puerta.
Sí, todavía tienes la
Il de los grandes almacenes y por el
el: Gizmo, sano y
oportunidad de conseguir
Este salgo a la esca!
lera. Me dirijo arriba hasta encon-
trar el escotillón. Suelto la escala (con su ayuda podré
subir fácilmente al tejado) y VOY hasta ella.
Acabo de subir al tejado de los grandes almacenes.
Todo el sitio está nevado y un gran agujero en los sis-
temas de ventilación me hace temer lo peor.
Gizmo, como presintiendo una inminente tragedia,
se introduce atoda velocidad por el sistema de venti-
El rellano de la escalera que sube hasta el último
piso.
lación.
Oigo ruidos... ¡Pero que es esto!
¡Tengo visitas
mara fotográfica
La entrada del Cine Colony, con las pisadas delatoras.
Un pequeño retraso
será invadida.
22 MICROHOBBY
algo desagradables! ¡Los Gremlins
están aquí de nuevo! Tras empujar el botón de la cá-
se produce una luz cegadora y los
en la película y la sala
Con el auxilio de la escala resulta fácil
acceder al tejado.
Un enorme agujero
de los diablillos.
Mi amigo
evidencia la presencia
GIZMO me abre la puerta desde el interior.
¡CONSERVA POR
UN AÑO EL
ANTIGUO PRECIO,
Y CONSIGUE UNA
CINTA DE REGALO
QUE VALE
2.100 PTAS!
Aprovecha ahora tu
oportunidad. A
partir del 1.2 de
octubre, el precio de
la suscripción será
de 1.000 ptas. más
caro. Ahorra durante
todo un año y juega
gratis con
Hypersports.
gratis una cinta original de
Hypersports, que vale 2.100
ptas. en el comercio.
Microhobby te lo regala si
formalizas ahora tu
suscripción por un año,
renuevas tu antigua
suscripción.
Envía ya tu cupón y
recibirás la cinta a vuelta
de correo. Si deseas más
información, llama a
nuestros teléfonos (91
733 50 12 y Ad
(91) 773 50 16.
(Ampliado el plazo
hasta el 1.2 de octubre,
a petición de nuestos
lectores).
PROGRAMAS DE LECTORES
Premiado con 15.000 Ptas.
24145¿2,2.2,9,9,9,27,238 16,90,126,69,60,126,255,255,126
DATA 0,24,44,6,3,3,1,0,0,0, S6%8 para 252,249,243,161,218,23 $186 DATA 219,25$,60,124,105,108
Tele s2a 285 37 246,250,258,25 A AA O SÍ18 DATA 0,0,0,0,126,215,215,86
9,254,220,24,36,49,31,8,12,6,3 39889 DATA 128,216,252,248,250,25 3308 20 To 6000" a
Javier CANTERO a Sesa BATA 50/186,241,19$ 80,126, 2,255,255, 1, 49,127,127,63,63,127
¡avier A 231,129,111,55,855,254,125,27.25 $8s8 DATA 144,84,57,18,212,52,24
E
Spectrum 48 K
Nuestro espiritu
aventurero no puede
resistir la tentanción de
embarcarse en una
audaz hazaña de la
que podemos salir
malparados: rescatar
un ancestral tesoro
oculto en las
Premiado con 15.000 Ptas.
BASKET
Manuel FREIRE
| Spectrum 48 K
| A Basado en el, por todos conocido, juego de baloncesto,
con este programa podrás desarrollar tu destreza mano
profundidades |
dla a mano con el ordenador. y
e | “Nada más cargar la cinta aparecerá contrario y desarrollar las jugadas típi- rn
e iemente eusrdado du- en pantalla la cancha, fielmente repro- — cas de este deporte, ganando el jugador SS Der PESAS. LET cb=12: LET f
rante años por la monumental presen- ducida, en la que dos jugadores, uno que antes consiga veinte puntos y fina- “=23:_LET pidce)o Lor," TE
cia de un pulpo gigante, se encuentra con camiseta blanca y el otro con una — lizando el partido cuando uno de ellos DE dele a il q is
verde, pondrán a prueba su juego.
Podremos encestar, «taponar» al
en una siniestra cueva oceánica sin comete cinco personales.
que, por el momento, haya caído en las
manos de aquéllos que lo ambiciona-
ron, todos ellos muertos en el intento.
Nuestro propósito será superar todas
las dificultades que entraña la aventura
: 1090,IF t=1 THEN PRINT AT ku+a.s
(profundidad del mar, medusas, plan- x+1; TF Lola AND coc1o THÉN É630 PRINT ; PRINT “Muchos ha
tas mortífera, amén de los temibles ten 1829 91920, THEN RETURN pen SEUECES rcasatones
a > e 1050 1F a=8 THEN LET ku=ky+l: RE $040 _PRINT_: PRINT_", Ahora tú.
E i pa ef
táculos del molusco) y conseguir el, se: dE Se sun 2ae0 aer LarLS de 13S profundidades del
di : : E “+
gún dicen, fascinante tesoro mediante xo a CSSxA AND cocao THÉN 6850 PRINT : PRINT " Tus movim
ZE . . . entos s
el hábil manejo de las siguientes teclas: 1120 IF t=1 THEN IF ky=4 THEN LE é Ne PRENT TAB 1
E T t=0: GO SUB 2008: RETURN la
«Q», arriba. 1580 1F a=8 THEN LET ky=ky-1: RE
«A», abajo. 140 IF a=17 OR a=104 THEN RETUR “Buena
izqui 1198 GO SUB 2198: RETURN PULSE_UNA TECLA
«0% apnea: O A REN 2008 PAPER 1. INK 8: BORDER O: B
«E», derecha: 128 TOpt 2 A 208 rÓR DO 3 mE AT n,0
14 TH n= E n,0;
A O E PAPER 5; BRIGHT
1239 IF _3=8 AND b=S THEN LET kx= eS
kx+1: RETURN PE
NOTAS GRAFICAS 1278 IF a=10 OR b=10 THEN RETURN NE d E
o RN 1588.12 tel THEN PRINT AT ky+1,k 8 105 SAT 19,1
DE N = y+ ,
< As AT 20,17;
psi al id A ER
TE : BEE TES 15: RETÚRN 17,0; $b "a
2 98 b=10 OR b=14 OR (5 ee
1950 IF 8-8 AND b=8 THEN LET kx=
kx RETI
[PEOR] 1ósa 00 <UB 2100: RETURN
3018 LEr sicetass: CET S8sSTRE s
Aris bs
29 LET_ mazo. LET 25="00000" Cc. PRINT AT Eyed oa PABER
188 LET Í=1N7 (RND=100) PP Pei a
110,7, 9> (9555/1090), THEN RRINT 2028 RETURN
BT) 28,13; INK S/DS: LET P=1 2100 FOR f=6 TO 0 STEP -1: Bo 3 2959. , PRINT EOpER NA
200 Li NI =0_TO 3: BEEP .04,9+f: NEXT 9: N 0; is, a"
¡519 E y, THÉN PRIME ATA ky, EXT_f ¿e Z ;
AA + A 3110 IE_li=0 THEN GO TO seen z
R_(Kky+2,Kx): LÉT Cc=ATTR E kx 2120 LET li=li-1: E AT Ky,kx TS ; $ E do Nr a
+1): 60 505,190 1] os PARIA Er z ¿67 K AE "Y “AT 13+n,23,
¡s29 a Lego EAN AT E 8 ESErS Sig eRIGHT £ o LET ky= “¡AT 18+n,28, "Y
R y-1,00 LEF C<arTR ty oia 2130 17 t=1 THEN PRINT AT ky+1,k 6: nr 19,2) "48 "¿AT
a 5Úb 11 X+1" LET 9=1, 10 135 PRI
238 1F i$= 2140 RETURN (RND*20)
kx; ¿AT ky+1 z 3010 IF _sczma THEN LET ma=5c: LE
CER CLATTR ROL RIdO) d038 PRAT "A ; pi
¿0h 55 038 PRINT AT 10,5; INVERSE 1; I ="4
is5="0" THEN PRINT pa ne
¿AT E LET
b TFR yir, o
PRINT INK_7;AT ky,kx;a$;AT
Ky+1,kx;b$;: IF ue a PRINT A
+1,Kx+1; INK ts
IF P=1 THEN,3E Kky=19 AND kx
sul
290 z ña a 495-55/100% Sue, pl
Ez 20 LET
=0
539 GO TO 1008
24 MICROHOBBY
Pr
THEN STOP
6000 PAPER 1: nr 6: BORDER 1: C
Ep INT TAB S;"LEEBBUZ
TI PRINT ” En una cu
eva perdida,se haya un gran teso
ro custodiado por unpulpo gigant
L
a ¿ INK 0; PAPER 5; BRI
GHT 1;AT 0,0;"UIDAS: ";Li; 95
"PUNTOS : 20600"; AT 0,2%; "MAX. : 000
2", AT 0,32-LEN 2425
177 EN
a ES R En, E ME psa e dr
n
2 DATA 60,66, dé, PRA xo" 126,219
92
2219, 218,289, 80/82/82 55,112
$838 'DATÁ 60,866,129, estos ia,
MICROHOBBY 25
HIY' PROGRAMAS DE LECTORES E
Paseo de Gracia, 11 - Esc. C., 2.0.4.2 RA a Tel. (93) 318 24 53 - 08007 Barcelona
)
ENVIOS CONTRARREEMBOLSO a | Dirección:
IMEIMEINTS
Población:
26 MICROHOBBY Pedido:
2140
a q A men Go TO_780 2200 PLOT x,Yy: PLOT x+1,Y: PLOT Il I
769 as(1,1 * THEN LET d$l X,Y+1: PLOT Xx+1,Y+1
“100 REM pr 1,1)=" LEt Ear ES EN nl TO LET y=y-2x* (ABS ( 1
A a BI E
PS O da LEr deca, : GO TO 798 2220 PLOT x,Y: PLOT x+1,y: PLOT ! |]
106 BORDER 0: BEEP 0. 780 LET d$(1, Ri xX,Y+1: PLOT_x+1,y+1 A
118 PLOT E Sñhu ES$s 9: DRA AN IF fí4,1)= bc ale a A ol Il li
A E 300 PRINT INK Ap de, cbid$(1,1 do Té Sse0 J
120 PLOT 128,30: DRAU 0,88: CIR ¿AT fb+1chid > 2240 IF x=26 THEN GO TO 2300
A A A E ,
: ¿2d A , =y) <
wi? 14: DRAW -30,10: CIRÉLE 72,7 852_1IF A IN 32766=25 2258 60 10 2200 Il Il
Ye 3 THEN _G0 TO N 60 TO 8so 2380 PLOT x,Y: PLOT x+1,y: PLOT ) SUPER-TEST INTERFACE CENTRONICS
i4o PLOT 20 60: DRAW -50,10: 855 IF f(1,2) HEN Dre x,Y+1 LOT'X+1,Y4+1 Í
AU, -3,14: RÁU 38,18: CIRCLE 13 360 IF 4$(1,2 HEN, L 3 2310 LET x=x+2: LET y=y-2%+ (ABS ( ¡2 IMPRESORAS 8.000
ER 13) 30 LEL, ¿23 Ub”; BEEP d=b)/ABS_(c-8)) INTERFACE JOYSTICK
1481 981,28: GO 2328 PLOT _X,Y: PLOT x+1 PLOT A
188 PLOT i2,s0: DRAW 20,30; DRA 870 LET d$(1, GO TO s9e yr1: PLOT 241 Uta Y UNDERWURLDE 1.400 I
900: PRñy 32) 887 PRA O, 38 See DEF dis; IF f(4,2)= 2338 ir ye8s THEN PLOT y: PLOT KNIGHT LORE 1.400 + QUICKSHOOT II 6.900
10: DRA 77-18. DRA 8-18 1 THEN LET 98: . O , INTERFACE PARA MONITOR 3.900
276 .Eon n=1 TO” Acad 21+n, 103 9 Pl EIA fv,cvid$(1,2 2340 IF ABS (32-x)<4 ER ABS (10 Il y
RAU_4,8: NEXT ES EE inercia TOS 438) “E THEN GO _TO 340 | WANTED MONTY MOLE 1.300 IMPRESORA RITEMAN F + 69.000
¿go PLdr 28,104: TORaU 9,00: 0 RE Sos Rem as 1] GREMLINS (castellano) 2.300 IMPRESORA SEIKOSHA SP-1000 69.750 I
=3 TO 7 STEP 2: PLOT 3100 REM
ono de TEOP a T0 3188 OUERTO | HYPERSPORTS 2.100 MONITORES para SPECTRUM 1
A PA AN 777 PEmsonaL 9r707 ENK 75 FLASH 1 TAPPER 2.100 desde 24.000
200 PLOT 245,80: DRA -298,30: D 10: 31208 LET P(2,1)=p (2,1)+1 100 INTERFACE SONIDO TV 3.500
o io eos, els L atacd eros iz pl er ÓN 2.100 IMPRESORA SP-1000 + Adaptador l
210 PLOT 238,191: DRA 7,10: D 19 O OR Tn a | A OT al I
nio S: BLorras0 ón 1 18 3359 PR INK 7; FLASH |] BASEBALL 1.800 CENTRONICS + especial
E 13 3160 PR 12; INK 7; FLASH SHADOWFIRE 2.100 + COPY GRISES 72.000
DRA -9,0,-3 19 6 A $ ñ b
STEP 2: PLOT 2 11 2170 Té THEN STOP l SPY HUNTER 2.100 DISCOVERY 1+10utilidades 55.000 1
UNES 13 SEDES; Ss I ROCKY 1.800 DISKETTES 3 1/2'+ 10 utilidades E Il
z 3188 GO ABU SIMBEL (PROFANATION) 2.100 KIT TECLADO SPECTRUM+ A
143
1128 LET $250; LE Ela 336s GuER 8 l CYCLONE 1.750 TODOS NUESTROS PROGRAMAS I
o OA En 7% PERSON A 1 GHOSTBUSTERS 2.000 DISPONIBLES TAMBIEN PARA EL I
ES INK 7;"0";AT 1138 Ler_ x=3: LET y A E , POLE POSITION 1.800 DISCOVERY
: PLoT 1 : PLOT 3230 PRINT 0; INVERSE 1; I
í 1135 PLOT x.y: X+1,Y: NE, gi ELASH, AS MATCH POINT 1.750
"385 ESST ERad La Mido PLOT, y. PLOT x+1,u: PLOT 3240 50: NEXT n S
a BRA a e E AA ALO aaa 3350 PRENT AT 9/10) INR 75 FLASH WORLD SERIES BASKETBALL 2.300
284 PLOT 29,171: DRA 288,8: PL 11580 LET x=x+2: LET Y=y+2*((d-b) e Il Il
OT 29,171: DRAW a,-23 /(c-a) - PLOT co PRINT AT 3,20; INK 7; FLASH
oia AT O o OLAS PLOT Escasa pd - THEN STOP 1] I
see 1170 ir ass Le réLs3 AND ABS (y-f LET fU=fv2: LET
SENT OO sua e CONTEXT V7 (STANDARD) 4.000
ES a a da 8 60. 1 CONTEXT V8 (Catalán-Castellano) l
ñ 1280 PLOT _x,Y: PLOT x+1,4: PLOT Sen? Al
Aer META 10, 120,06 Rae PLOT Rd es I Versión SEIKOSHA SP-800 4.000 I
1219 Ler X=X+2: LET Y=yY-2% Z REM . 5n RITEMAN F 4.000
,48,48,48,120,72,72 vtc-aJ) 3320 PRINT AT 5,18; INK 7; FLASH Versión E Y
8,8,112,112,115,36 ro Ma te AN e3ón LET P(1,1) =P (1,1142: LET 26 |] 4 AJUSTADOR DE CABEZALES * ADAPTADOR SITI-CONTEXT 2.500 |]
59,51 rd . E ? 1025 ir Gios TREÑTBLOT x,u: PLOT =STRS PP (1,1): e p(1,1)<10 THEN k COPY GRISES (F + SP 800,1000
o A o o A a ri men I CASSETTE 2.500 MES I
"380 "DATA "e”,0,8,112,112,112,39 1240 If x=252 THEN GO ¿Bo “ABS CS A A SONDA TERMOMETRICA 4.750 GP-550) ) e 5
356% “po iS EN SO TO SS 3360 PRINT AT 5,10; INK 7; FLASH i * Sistema Operativo M.D.S. Il
370 DATA f",48,48,48,120,72,72 253 3<3 THEN E o a SONDA LUMINICA 4.750 kk A a e 7.000
50 Dira "g",64,64,78,78,78,36, 1500 IN óR PLOT x+1,4: PLOT 3370 PRINT AT 1,14; INK 7; FLASH DIGITALIZADOR DE IMAGENES (Acceso aleatorio a Microdrive) 3 I
SS0 para “n”,12,12,12,90,18,18 a OS ce ll CONTABILIDAD PIN
Es pa + a e: KS sz IE 3380 IF (1,1) =20 THEN STOP ón
a” 1388 PLor PLOT x+1,y: PLOT 358S dUER 1/ PLOT xy: PLOT x+1, P-1204 35.000 Plan contable, 200 ctas., 2.000 atos. Il
A UE o cd ET IN ALIMENTACION ININTERRUMPIDA 9.750 Acceso directo a Microdrive
El < xy:
as A xX+1,4: Por x,Y+1: PLOT X+1,y+1 a EL ; | I UTILIZA EL S.O. M.D.S. 3.000 I
428 DATA "k",0,8,14,14,14,228,2 o O VIAND ABS 61 rd PRNT, AT, 5.10; INK 4; FLASH
438 DATA "1",12,12,12,38,18,18, Or cu<4 THEN DOSTON3SBO) 20 LEN PIL, E) =P (1,2)+2: LET_ as E GS
¿86 REruR 2000 Ren EE cErs Pura: ¿AFP ida) cio THEN I SIR LAPIZ OPTICO + SISTEMA DEDIBUJO 1
A A 2819 IE 111, Seo cóRERr TAR 1,17: INK 4; FLASH Il - Lápiz y programa en código de máquina Il
Y EMS ENON iS Z qero É E els Parte, 10 NOT con más de 40 opciones I
on tal E ES 8 5571 e Aa a INK % ae l sones pel
F% Movimie = , due, ; , a
ET fb2=fb: AS cb2=cb: LET 2049 REM % 0479, PRINT I o necesita inte: ace % a I
y LET cvescy 2045 LET f(2 3489 IF p(1,2)=20 THEN STOP - Trabaja con cassette y/o microdrive, T.V. blanco y negro
ET_fb=fb+(IN 65022=253) - (1 2050 LET fv= 3485 OUER 1/ PLOT x,y: PLOT x+1, n it
SIS IA Fby16 OR Fb<7 THEN LET f eS a X+1,4+1 I color o monitores I
SD IN 64510=247) - (1 3200 Rem 023 ispar EX Seco REN z SOLICITA INFORMACION DETALLADA
NEasTaces E 2105 IF _cv>15 THEN 60 TO 3510 REM > pá l P.V.P. 4.850 Ptas. l
A fb=fv AND cb=cv THEN GO En LET a=1cvx8): LET b=175-(fvw a AR A 1
A 49150=251)-(1I NN e=B+1cb148): LET f=175-1 EL tor = E I S.1.T.1 versión 3 Il
HEN LET f 2129 LET d=150 ¡AT fv+1l,cv;d va A A .
o A RRA ds 212s cn ESO CET 92? ose LET ib=19: Il a AD O GINES Il
)- OE A SE =10: = sz
noS278l SN TO ¿23 ¡AT Fv+1,cv;d5(2,2) 3540 GO ya Selección ampliada
A Oe eros PLOT: dese DEL A) 0: LET f(1,21=1 |] - Consulta bidireccional, etc. E I
77380 sus 700 RL PLOT RAR 5625 ERINT ENS 23AT, Fbycbi de list Cambio por CUALQUIER versión anterior: 1.000 Ptas. 1
0 TO O Eco xX+1,y4: PLOT 3627 PRINT INR CAD, fu ,cvjd$ (1,2 Il P.V.P. 4.000 Ptas. .
2=fb AND 2150 LET x=x-2: LET y=y+2x* (ABS ( J¿AT fv+1 cvid$(2, pe
OS 476) 885 Lea o E e cés9 LET fbzi9s LÉT cb=16: LET f |] Q
ha Xy: x y: a > de
o 21331 PLOT eE aa E E ENMATEERAAAN ss O a o
. > 133 THEN_GO [| PEDIDOS POR CORREO O TELEFONO
65278=25 2199 IF IN 327e6= E THEN GO TO Es Nombre: ca
COPYUPI, UN COPIADOR
MUY ESPECIAL (y II)
Lorenzo CEBEIRA
En ésta segunda y última parte vamos a mostraros el
manejo y uso de las rutinas para su adecuada
utilización, así como el desensamble de las mismas para
una mejor comprensión.
Y vamos ya con las rutinas. En la ta-
bla adjunta se muestran las direcciones
de memoria donde se úbican las distin-
tas subrutinas y los datos más rele-
vantes.
Estas están situadas en el Buffer de la
impresora, lo que nos deja libre toda la
memoria de programa como zona de
trabajo para COPYUPI. Así, por ejem-
plo, si queremos cargar un programa
normal haremos PRINT USR 23373 y
si queremos grabarlo haremos PRINT
USR 23350. Pero antes de llamar a las
rutinas hay que dejar sitio libre en me-
moria para cargar los programas. CO-
PYUPI utiliza como zona de trabajo to-
da la memoria por encima de RAM-
TOP, por lo que si queremos cargar el
programa en, digamos, 39009 habrá
previamente que hacer CLEAR 29999.
Otra consideración a tener en cuenta es
que las rutinas de carga informan del
resultado con tres posibilidades. Y sig-
nifica correcto, 1 que el programa no
cabe en la memoria que hemos reser-
vado y 2 que se ha producido un error.
La única excepción a la regla es la ruti-
na de carga sin cabecera (señalada co-
mo LOAD ESPECIAL) que puede de-
“volver un Y sin haber cargado nada. En
este caso hay que comprobar que la
longitud del programa que se ha carga-
do sea diferente de Y. Esta longitud la
devuelve COPYUPI en los ya conoci-
dos bytes 12 y 13 de la cabecera que he-
mos visto antes. Y vamos ya a analizar
cada rutina por separado.
LOAD NORMAL
La rutina de LOAD NORMAL sirve
para cargar un programa normal con
cabecera. Esta cabecera se almacenará
en la dirección 23522 y siguientes, don-
de podremos analizarla tranquilamen-
te. El resto del programa se cargará jus-
to por encima de RAMTOP como ya
hemos visto. Para utilizarla haremos
PRINT USR 23373 y, como ya sabe-
mos, si se imprime Y en la pantalla sig-
nificará que se ha cargado el programa
correctamente, un 1 que el programa es
demasiado largo para la memoria libre
y un 2 que ha habido un error de carga.
LOAD ESPECIAL
La rutina de LOAD ESPECIAL car-
ga los programas sin cabecera, a condi-
ción de que el flag esté debidamente
ajustado (más adelante veremos cómo
dar al flag el valor adecuado). Esta ruti-
na devuelve la longitud cargada en las
direcciones correspondientés de la ca-
becera que se indican al final del lista-
do. A diferencia de la anterior, esta ru-
tina no indica si el programa ha resulta-
do demasiado largo para la memoria
disponible por lo que habrá que calcu-
larlo manualmente. Como de costum-
bre, nos delvolverá un Y para indicar
operación correcta, con la salvedad que
señalamos más arriba, y un 2 si ha habi-
do error de carga.
SAVE NORMAL
La rutina de SAVE NORMAL sirve
para grabar un programa con su corres-
pondiente cabecera. Una de las venta-
jas de COPYUPI es que podemos em-
plear esta función para grabar cual-
quier cosa que tengamos en la memo-
ria. La aplicación más corriente es car-
gar un programa sin cabecera, ponerle
DESENSAMBLE
2
la cabecera que queramos y grabarlo DE LAS RUTINAS pa) LD BC,10002 Pd e AR pes]
como un programa normal. Otra posi- == E) RET NC 62 PREPAC LD A,100 9% LD DE, CHEADER+11)
bilidad es, cargar un programa normal, pios E Es c,m0 8 LD DE,B1 100 LD 1X,(23730)
eliminar la ejecución automática modi- 29- 3; pa denia ce PLD
ficando la cabecera y grabarlo con esta 3; A; 86; po ¡ ved
rutina. También podemos modificar mL 35 SE CALL PREPAC 8; 14;
z 5 ORG 23296 36 CALL 14C2 D
RAMTOP para grabar sólo parte del ii Di Vean 05 DLOAD CALL PREPAR
programa cargado o para fundir dos 7; 38 LOOP MALT A el 10556 y A af
programas en uno. 8 TIPO: CALL ADJUST y DINZ LOOP 1 JR NC,CARCAB 108 POP BC
, 9F3 LD A w LD A,AFF 7 LD A, (HEADER) 109 ANA
VERIFICAR NORMAL my E e LD ELSA 73 ce ma 110 SEC HL,BC
r A 42 DSAVE CALL PREPAR 24 JR NC,CARCAB 11 PUSH ML
; 1402
La rutina de VERIFICAR NORMAL | 0 A Ad E de
se utiliza para comprobar que la copia 14 LO CFLAG),A 45; 7; 114 Se.
del programa ha sido correcta. Devuel- CA q ep IA 78 ADJUST LD A,CFLAG) 115 CALL 00556
ve un Y en este caso y un 2 si ha habido 7 LD CA 4 CALL CONCAB E » io f16 LD: BE d002
algún error. En cuanto a la rutina de ve- 18 RET 49 LD Aj 81 LD pb 13 > pe
rificar especial realiza la misma fun- Ci se croc 82 RET 119 RET_NZ
ción con los programas sin cabecera. | 21 VERIFY CALL PREPAC E EE o E ¡ A! e Ix
ga 3 1D AN ES Cmos 0 2 a
Lector de cabeceras y flags 2 LD Bc,10002 54 scr 86 LD HL,(23732 123 LD BC,(23730)
a ra poa 5 CALL 10556 87 LD BC,(23730) 124 SBC > HL,BC
La rutina de leer cabeceras es una 2 LO (FLAG) es o La O Ls e
¡A 57 RET_ NC
e pos E 27 VA DAL PEPA e LD BC,(HEADER+11) 126 LD BC,H0000
función que se limita a cargar la cabe se LD C,1M00
a » SEC HL,BC 127 RET
cera de un programa. Puede utilizarse 5 Rer 9% LD BC_00001 128 ;
para construirnos un programa lector ba pe E 100 SS dE DEFS 17
. y
de cabeceras que nos informe del 94 RET 131;
contenido de un cassette o parj 95; 132;
añadir una cabecera que tenga %; 133 FLAG DEFS 1
28)
mos grabada a un programa
que carezca de ella y que
hayamos cargado previa- f
mente.
En cuanto a la rutina de
leer flag, sirve para aho-
rrarnos el trabajo de tener
que proceder por tanteo a y pu
la hora de cargar un progra- E E ANN .
ma sin cabecera. El tipo de A, == LAN
flag se almacenará en la di-
rección 23539 y, además,
se ajustarán automá-
ticamente las rutinasfo
de cargar, grabar yl
verificar especiales
para trabajar con el
nuevo valor. Si que-
remos cambiarla
bastará con a)
hacer E
MICROHOBEY 29
E L.FRONTÁN
sy HNDOR
AS
CONSIGUE SER MEDALLA
DE ORO EN: TIRO DE
PISTOLA, SALTO DE
TRAMPOLIN, PENALTIES,
CICLISMO, SLALOM
NM OO)
DE CUERDA Y SALTO
CON SKI. HECHO POR
ROSAVIENOS
PROGRAMADORES DEL
00711 MMO)W=
HYPERSPORTS.
SPECTRUM
CA AA
NI MKO] VO ==110))
*
No CGAN AUN ASA
AUTENTICO JUEG(¡DE BALONCESTO
QUE HAS VISTO ENLAS MAQUINAS, EL
NANA ANN ORO MINOR
A SE ISMAO NO D/A
PROGRAMA UNA MAGNIFICA CAMISETA
DA =CINMOA
HUYE DE LASIMITACIONES.
ANNAN ADOOS
EL MALVADO MORAG
¡CON LO)D o =M
UCI AMANDO)
ADMIN SN OO)
¡30710
DINNION EA OO
UNEN 30493
MONO NO=
ION SS
COMO SI DE UNA
PELICULA SE TRATARA.
SPECTRUM/AMSTRAD
DACIA + T|
HEW30N
FS EA
A Y)
comduLrants
Ampliación de memoria
¿Existe la posibilidad de
ampliar el Spectrum 48 K
RAM a más memoria RAM o
está condenado a quedarse
con tan poca capacidad de
memoria?
¿Se puede ampliar la ROM
del Spectrum exteriormente
como el QL?
¿Por qué los G.D.U. se di-
reccionan en la memoria del
ordenador con las letras de
la “A” ala “U” y no las restan-
tes del abecedario? ¿Los
G.D.U. se sitúan en ROMo en
RAM? ¿Si se almacenan en
la ROM, se pierden al apagar
el ordenador?
¿Cuándo se usa “CODE”
para grabar un programa?
¿Tiene alguna utilidad REM
aparte de memorizar o re-
cordarlo que se está hacien-
do? «¿El Spectrum tiene
Compilador o Intérprete?
¿Cuántos programas se
pueden grabar en una mis-
ma cinta?
¿Hay alguna casa distri-
buidora de Spectrum que
haga la ampliación de me-
moria?
Agustín LOPEZ - Parla
O El microprocesador Z-80
sólo permite direccionar 64
K de memoria tanto RAM
como ROM, por tanto, cual-
quier ampliación a más de
64 K exigiría paginar la me-
moria, le remito al artículo
aparecido en el número 5
de esta revista.
Los G.D.U. ocupan las
168 últimas posiciones de
la memoria RAM, como ca-
da uno ocupa 8 posiciones
sólo hay sitio para 21 G.D.U.
es decir, de la “A” a la “U” y
se pierden al apagar el or-
denador.
Se usa “CODE” para gra-
bar un programa cuando
éste está escrito en Código
Máquina, pero “CODE” tam-
bién sirve para grabar una
serie de bytes, por ejemplo
los G.D.U. o la pantalla. La
sentencia “REM” sólo sirve
32 MICROHOBBY
para incluir comentarios en
un programa. El Spectrum
utiliza un intérprete, por lo
que trabaja siempre sobre
el código fuente. El número
de programas que cabe en
una cinta depende de la
longitud de los mismos, a
título indicativo, en una C-
60 caben más de 30 progra-
mas de 16 K.
La misma firma que im-
porta el Spectrum se encar-
ga de ampliarle la memoria.
Contabilidad en el
Spectrum
Les escribo esta carta pa-
ra preguntarles si en el
Spectrum de 16 o 48 K se
pueden llevar la contabili-
dad y ficheros de un peque-
ño negocio, y sí se venden
cintas con programas co-
merciales.
Rafael MARQUEZ - Córdoba
O Efectivamente, el Spec-
trum permite llevar contabi-
lidades y ficheros. Para ello
deberá usar la versión de
48 K, así como algún dispo-
sitivo de almacenamiento
masivo de datos (Disco o
Microdrive). Existe comer-
cialmente software al efec-
to, adaptado a Microdrive
(Bases de datos y Plan Ge-
neral de Contabilidad).
Impresoras
Estoy pensando en com-
prarme una impresora y te-
nía elegidas la SEIKOSHA
GP-550 o bien la STAR GE-.
MINI 10X. Deseo que me
aclaren, si está en su mano,
cuál es la forma de conectar
estas impresoras al Spec-
trum para obtener el máximo
provecho de ellas.
¿Cómo puedo averiguar
las direcciones de comienzo
y fin de un programa?, lo ne-
cesito para un desensam-
blador que me pide estos
datos.
José Il. HENCHE - Huesca
O Las impresoras que nos
indica utilizan la norma
CENTRONICS, por lo que
necesitará un interface para
impresora de este tipo. Para
obtener el máximo rendi-
miento, deberá seguir las
instrucciones del interface
que elija. Le recomendamos
el de INDESCOMP por ser el
de manejo más sencillo, con
la ventaja adicional de ser
compatible con todos los
procesadores de textos
existentes para el Spec-
trum. Junto con el interface,
deberá adquirir un cable
CENTRONICS para conec-
tarlo con la impresora.
Para averiguar la direc-
ción de comienzo y la longi-
tud de un programa, puede
utilizar el programa «Lista-
dor» publicado en el núme-
ro 2, página 10 de nuestra
revista. Caso de que el pro-
grama en cuestión no tenga
cabecera, deberá desen-
samblar primero la rutina
que lo carga, para averiguar
el valor que introduce en el
registro «IX» (inicio) y en el
«DE» (longitud).
Teclados profesionales
Quisiera preguntar dos
cuestiones sobre el ZX
Spectrum Plus.
1. ¿Se le puede acoplar
un teclado distinto aunque
no fuera profesional, por
ejemplo el del 48 K?
2. ¿Se puede meter un
programa escrito para 16 K?
Luis MORENO - Málaga
O Al Spectrum Plus se le
pude acoplar cualquier te-
clado que se le pueda aco-
plar al Spectrum, ya que la
placa de circuito impreso
de ambos ordenadores es
la misma y sólo se diferen-
cian en la carcasa.
Por otro lado, le puede in-
troducir programas escritos
para 16 K, el único proble-
ma podría surgir con la di-
rección delos UDG si se po-
ne de forma absoluta en lu-
gar de utilizar la función
USR “a”.
La ZX-Printer
Deseo comprar una im-
presora ZX-Printer usada,
pues tengo entendido que
ya no existe en el mercado, y
me gustaría que me informa-
sen sobre las prestaciones
de que dispone. Así mismo
les ruego me informen sobre
la existencia o no del papel a
utilizar y el servicio técnico
que existe.
Francisco ABELLAN - Murcia
O Efectivamente, la ZX-
Printer ha dejado de fabri-
carse, por lo que le reco-
mendamos que opte por la
SEIKOSHA GP-50S o la
ALPHACOM-32, ambas de
precio y prestaciones simi-
lares a la ZX-Printer. La GP-
50S tiene la ventaja adicio-
nal de utilizar papel normal
(no térmico).
Son impresoras matricia-
les de 32 columnas con una
sola aguja de impresión, sin
buffer (utilizan el del orde-
nador) y más bien lentas;
aunque eso sí, son muy ba-
ratas.
La ZX-NET
He leído que pueden co-
nectarse más de un Spec-
trum (hasta 64 unidades),
para potenciar sus posibili-
dades.
¿Me podrían explicar de
qué forma puedo conectar
dos Spectrum y si realmente
se obtiene la teórica cifra de
96 K de memoria?
Ricardo CASTRO - Sevilla
O Es posible conectar va-
rios Spectrum (hasta 64) a
través de lo que Sinclair ha
denominado la «ZX-NET»,
para ello necesitará el Inter-
face 1 de Sinclair.
La conexión de dos
Spectrum en una red no au-
menta la memoria de ningu-
no de ellos. Cada uno sigue
teniendo 48 K de memoria
RAM, pero se pueden inter-
cambiar datos y programas
entre ellos, con lo que pue-
den compartir periféricos
(impresora, Microdrive,
etc.).
Más de 21 UDG
¿Hay alguna manera de
hacer más de 21 gráficos
definidos por el usuario?
Luis SOTILLOS - Madrid
ll Como ya hemos comen-
tado otras veces, existen va-
rios trucos que permiten
trabajar con más de 21
UDGs. Todos ellos requie-
ren un buen conocimiento
del ordenador, e implican la
alteración de ciertas varia-
bles del sistema (CHARS o
UDG).
Las amplias explicacio-
nes que requieren se salen
del reducido espacio dis-
ponible en esta sección, pe-
ro son temas que hemos
tratado y seguiremos tra-
tando en diversos artículos
de la revista.
Funciones definibles
Desearía que me explica-
ran la utilización de las teclas
«DEF FN» y «EN».
Fernando GARCIA - Cádiz
O Setrata de las teclas que
controlan las funciones de-
finibles del Spectrum. El co-
mando DEF FN sirve para
definir una función que el
Spectrum usará como una
de las propias que ya tiene
definidad. FN sirve para lla-
mar a esa función. Como
ejemplo, supongamos que
queremos hayar el cuadra-
do de un número multiplica-
do por 2, haríamos:
19 DEF FN a(x)=2*x 1 2
20 INPUT n
39 LET y=FN a(n)
49 PRINT y: GO TO 20
ZX-Microdrive
Tengo interés en com-
prarme un ZX-Microdrive,
¿cuáles son sus ventajas y
cuáles sus inconvenientes?
José V. GISPERT - Madrid
O El microdrive es un dis-
positivo de almacenamiento
masivo de acceso secuen-
cial, si bien al estar forma-
teado, da al usuario la im-
presión de un acceso alea-
torio.
La ventaja principal de
trabajar con un dispositivo
de almacenamiento de este
tipo, es la rapidez en la gra-
bación y recuperación de
datos y programas.
Refiriéndonos concreta-
mente al Microdrive, su
mayor ventaja es el precio.
En cuanto a los inconve-
nientes, se podrían citar la
relativa lentitud de acceso,
la escasa fiabilidad (si lo
comparamos con un disco)
y la difícil sintaxis de sus
instrucciones al no dispo-
ner de un sistema operativo
propio.
Problemas matemáticos
Intento hacer un programa
que me haye todos los nú-
meros de tres cifras tales
que la suma de los cubos del
valor absoluto de sus cifras,
coincida con el número, el
programa es el siguiente:
20 FOR a=1 TO 9
30 FOR b=9 TO 9
49 FOR c=0 TO 9
50 LET n=100+a+10*
b+c
60 LET x=a13+b13+c13
70 IEn<>x THEN GO TO
99
890 PRINT n
90 NEXT c: NEXT b:
NEXT a
Con'este prograna no sale
nada, ¿por qué? Si se cam-
bia la línea 69 POR: 69 LET
a=a»a*a+b*b*b+c*c*c en-
tonces el programa se eje-
cuta y salen los resultados:
153, 370, 371 y 407.
A. PEREZ - Madrid
O El fallo se debe a que la
exponenciación funciona
por logaritmos, con lo que
se produce un error de re-
dondeo; error que tiene
consecuencias nefastas
cuando se intenta la com-
paración. Otra forma de ha-
cerlo funcionar es incluir la
línea: 65 LET x=VAL STR$ x
con lo que queda anulado el
error de redondeo.
PRIMER DIA.
O 1 MES DE DURACION
O CADA ALUMNO MANEJA UN ORDENADOR DESDE EL
Programando en C/M
¿Qué debo hacer para
programar mi Spectrum en
C/M, es necesario algún tipo
de software para ello?
Pedro CHACOPINO - Baleares
O Los programas en códi-
go máquina se escriben pri-
mero en lenguaje Assem-
bler y luego, se ensamblan
en código máquina. El pro-
ceso de ensamblado se
puede hacer en mano si el
programa no es demasiado
largo, o utilizar un «Ensam-
blador», que es un progra-
ma que traduce el código
en Assembler (código fuen-
te) a código máquina (códi-
go objeto).
GRATIS
VU
GUISO IDIE
BAS II
VU
Cc
O PRACTICAS ILIMITADAS.
O GRUPOS REDUCIDOS.
0 A PARTIR DE 10 AÑOS.
AAA AAAA AA AAA A A Y
ES
O LENGUAJES :BASIC-COBOL-LOGO
O TECHNICAL ENGLISH INFORMATICO.
O FICHEROS-TRATAMIENTO DE TEXTOS
INFORMES
LAES COMPUTER
C/ ENRIQUE GRANADOS 48 ENTLO 22
BARCELONA. (080.0 8 )
253 b
MICROHOBBY 33
Sn ooo ono. ooo---"
'
J
r
60 VENDO ordenador ZX Spec-
trum 48K por 33.000 ptas., con el
libro «Diseño y programación de
juegos». Alrededor de 50K de
uso. Vendo también una máqui-
na de escribir portatil casi nueva
(6 meses de uso) por 9.000 ptas.
Todo junto por 40.000 ptas. (Para
comprar un plus). Interesados
llamar al Tel.: (91)2661909, pre-
guntar por José Manuel.
O COMPRO sintetizador de voz
para el Spectrum por menos de
3.000 ptas. Los interesados es-
criban a: Paco Gonzalo Vilar. Av-
da. de los Castros, 38, 9.Santan-
der, o bien, llamaral Tel.: 276247.
Cantabria.
O CLUB del Spectrum, hace
ampliación de socios, revista
mensual, cambio de ideas, con-
sultorio, concursos, etc. Todo
gratis. Escribe a: Data Compute.
Cuesta de S. Vicente, 18. 28008
Madrid.
O VENDO impresora Seikosha
250 X, más interface Centronics
MICROSOFT-HARD, S.L.
Tel. (93) 348 04 07
ESPECIALIDAD EN VENTA
POR CORREO
Todos nuestros clientes dispondrán de dos po-
sibilidades de que su compra les resulte gratis.
JOYSTICK QUICKSHOT 11: 2.700 ptas.
TECLADO SPECTRUM PLUS: 8.500 ptas.
¡STOCK LIMITADO!
Solicite información y lista de precios indican-
do el equipo que posee al Apdo. 23.406 de
08080-BARCELONA.
HACEMOS FACIL
LA INFORMATICA
SINCLAIR
SPECTRAVIDEO
COMMODORE
DRAGON
AMSTRAD
APPLE
SPERRY UNIVAC
Modesto Colombia, 39-41
Lafuente, 63 Tell. 458 61 71
Tell. 253 94 54 28016 MADRID
28003 MADRID
José Onega
y Gasset, 21
Telf, 411 28 50
28006 MADRID
Fuencarral, 100
Telf. 221 23 62
28004 MADRID
Ezequiel González, 28 Stuart, 7
Telf. 43 68 65 Telf. 891 70 36
40002 SEGOVIA ARANJUEZ (Madrid)
Padre Damián, 18
Telf. 259 86 13
28036 MADRID
Avda. Gaudi, 15
Tell. 256 19 14
08015 BARCELONA
34 MICROHOBBEY
+ ae O o
para Spectrum, cable por 40.000
ptas. y regalo cinta Context (pro-
cesador de textos). Interesados
llamar al Tel.: 262083 de Lérida.
O VENDO ZX Spectrum de 16K,
sin estrenar todavía. Incluyo ade-
más la cinta Horizontes, alimen-
tador, manual de Basic y el de
instrucciones en castellano, ca-
bles y conexiones por 25.000
ptas. Carlos González. Tel.:
7110820 de Madrid.
O VENDO ZX Spectrum de 16K,
con todos los cables y fuente de
alimentación. Regalo cable de
conexión para TV de antena de 4
salidas, y revistas. Todo por
30.000 ptas. Llamar al Tel.:
(958)294834. Preguntar por Luis
Alberto Sanz.
0 VENDO Spectrum 48K, com-
pleto, en buen estado, más revis-
tas, todo por 29.000 ptas. Tam-
bién vendo ordenador de aje-
drez «Chess Challenger», 8 nive-
les, cables y transformador por
25.000 ptas. Contactar con Ra-
món A. Valero Crespo. Avda.
Monforte de Lemos, 75, 4.* C.
28029 Madrid. Tel.: 7385673.
O VENDO ordenador 48K
Spectrum, comprado en nov. 84,
con todos los accesorios (trans-
formador, cables, manual, etc.).
El manual se dará en las dos ver-
siones (el original en inglés y el li-
bro traducido al español). Precio:
33.000 ptas. Preguntar por Víctor
en el Tel.: 2011627 de Madrid.
O VENDO sintetizador de voz y
Spectrum 48K y dos libros, por el
precio de 35.000 ptas., contodos
los accesorios y manuales. Lla-
mar al Tel.: (972)369246. Pre-
guntar por Pedro Morales.
O DESEARIA recibir manual de
código máquina para el Spec-
trum, manual de Cobol, de Forth
y del Msx (pueden ser fotoco-
pias). Interesados llamar al Tel.:
6716118 de Coslada (Madrid).
0 VENDO ZX Spectrum Plus,
adquirido en ene. 85, con acce-
sorios. Precio: 42.000 ptas. San-
tiago Soto-Largo. Narváez, 86.
28009 Madrid. Tel.: 2743468.
O VENDO Ordenador ZX Spec-
trum 48K, muy barato, completo
(manual en castellano, fuente de
alimentación, cables...) con TV
12”, cassette especial, revistas,
Vendo todo completo, nuevo, ca-
si sin usar, a personas que vivan
en Zaragoza. Interesados escri-
bir a: Arturo Ramón. Gral. Sueiro,
39, 6. C. 50008 Zaragoza.
O VENDO «Mesa Sund» para
Spectrum, por estrenar, precio
de 3.000 ptas. Interesados llamar
al Tel.: (952)219019 de Málaga
(llamar tardes).
O VENDO interface de Joystick
programables Indescomp, en
perfecto estado, con instruccio-
nes incluidas. Se puede contro-
lar con Joystick cualquier juego.
Interesados llamar al Tel.
6680672. Molins de Rei. Barcelo-
na. Preguntar por Jordi.
O VENDO ZX Spectrum 48kK,
con cables, alimentador eléctri-
co, cinta Horizontes, más dos li-
bros para el Spectrum: «ZX
Spectrum: ¿Qué es, cómo se
Usa, para qué sirve?» y «Aplica-
ciones para la casa y los peque-
ños negocios». Todo ello por
29.000 ptas. Interesados escribir
a: Eduardo Ruiz Hurtado. Avda.
José Antonio, 7, 2.2 D. 24001
León.
O VENDO ordenador ajedrez
miniatura, magnético, 4 niveles,
diseño y fabricación ingleses,
10.000 ptas. Calculadora pro-
gramables Texas, Instruments Tl-
59, completa (cargador, baterias,
tarjetas, etc.) por 25.000 ptas. o
bien lo Cambio por radio control
6 canales. Tel.: (96)3499696.
Juan Antonio.
O CAMBIO proyector de cine
Super 8, sonoro en perfecto esta-
do, por un ordenador Spectrum
o por algún periférico, impresora,
etc. Mandar ofertas a Antonio
Granados Martín. Larrinaga, 1,
1.2, Int. A. Bilbao (Vizcaya).
O VENDO ordenador Spectrum
48K, en perfecto estado, junto
con toda una colección de revis-
tas sobre el tema, manuales en
castellano. Precio económico.
Para más información llamar al
Tel.: 6161609 de Madrid. Pre-
guntar por Roberto.
O INTERCAMBIO todo tipo de
información, trucos, ideas del ZX
Spectrum. Contactar con Fco.
Javier Hernández López. Las
Postas, 36, 2.2 Iz. Soria. Tel.:
(975)211431.
0 Site gusta el mundo de los vi-
deo-juegos, tengo una consola
Atari CX2600, con transforma-
dor, 2 mandos de volante y un
joystick casi nuevo, más 8 cartu-
chos. Para más información diri-
girse al Tel.: (96)3855645. Pre-
guntar por Laura o Carlos.
O SE busca gente que progra-
me en Código Máquina para for-
mar grupo de programación en
Bilbao o alrededores. Llamar al
Tel.: (94)4634791. Preguntar por
Iñaki.
O VENDO ZX Spectrum 48K,
con todo su contenido y en per-
fecto estado. Precio a convenir.
Interesados llamar al Tel.
(93)3451305. Preguntar por
Oscar.
O VENDO Spectrum 48K, con
manual en castellano, juego de
cables, transformador, cinta de
Horizontes en castellano, inte-
rruptor de resetincorporado. To-
do por 30.000 ptas. Llamar al
Tel.: 2439472 de Madrid, pre-
guntar por David Crespo.
O VENDO Spectrum 48K, com-
pleto (manuales, fuente de ali-
mentación y cables) en perfecto
estado y con garantía Investróni-
ca, por sólo 29.000 ptas. Regalo
un Joystick Kempston progra-
mable. Interesados llamar al Tel.: |]
(983)255149. Preguntar por
José.
O VENDO Spectrum 48K com-
pleto, con 4 meses de garantía.
Precio: 26.700 ptas. Interesados
escribir a Joaquín Alcázar. Lagu-
na IV, 4, 2.2 F. Tel.: (953)262691.
O VENDO Joystick y su interfa-
ce por 5.000 ptas. Contactar con
Isidro, llamanto al Tel.: 830124
de Guipúzcoa.
O VENDO Spectrum 16K, per-
fecto estado, con cables, fuente
de alimentación, cinta Horizoan-
tes más ampliación a 48K, todo
por 30.000 ptas. Llamar al Tel.:
244635 de Lérida. Preguntar por
Miguel Angel. (A partir de las 4
tarde.)
O VENDO ZX Spectrum 48K,
con cables,, cinta Horizontes,
manual en castellano. Adjunto
también interface programable y
el correspondiente joystick. Todo
ello en perfecto estado. Precio a
convenir (aprox. 35.000 ptas.).
Dirigirse a Tomás Saborido.
Maudes, 16, 5. Dr. 28003 Ma-
drid. Tel.: 2335571.
O VENDO ZX Spectrum 48K,
comprado en mar. 84. Incluye
manual y todo lo necesario para
su uso. Precio de 30.000 ptas. In-
teresados dirigirse a Jorge Ruiz
Fernández. Goya, 2, 4.” G. Valla-
dolid. O bien llamar al Tel.: (983)
239825.
O VENDO Consola de video-
juegos con 8 compactos de jue-
gos, marca TRQ-H21, nueva por
20.000 ptas. Interesados llamar
al Tel: (981)321062. Juan
Carlos.
O VENDO ZX-81, con apliación
de 16 K, (noviembre, 84), con
manual de instrucciones inglés/
castellano, cables, fuente de ali-
mentación. Por sólo 15.000 ptas.
(negociables). Interesados al Tlf.
(93) 3338459. Preguntar por
Madrid.
O QUISIERA contactar con
usuarios del ZX Spectrum para
intercambiar ideas, trucos, etc.
Escribir a Carles Jordi Fernán-
dez. Crta. a Bagá, 42, 2. Gua-
diola de Berguedá (BARCELO-
NA).
0 VENDO Commodore VIC-20.
Datassette, 2 libros, 3 cintas, ca-
bles... por sólo 18.000 ptas. Es-
cribira José Manuel Barrena Ló-
pez. Canarias, 11, de Utrera (SE-
VILLA).
0 QUISIERA comunicarme con
usuarios de Spectrum 48 K, para
formar un club de cambio de
Software y revistas. También de-
seo ponerme en contacto con
algún lector que pueda facilitar-
me las instrucciones de Fighter
Pilot, Dictator y Paintbox. Pago
fotocopias y gastos de envío. Es-
cribir a Antonio Gallego Alberto.
Avda. de Escalasitas, 56, ptal A,
6.2 D. Palmas de Gran Canaria
38011.
li a a o a e e A a A A A A A A A A A A O A A A A A A A A
MICRO
JORGE JUAN, 116 - 28028 MADRID. TEL.: (91) 274.53 80
SPECTRUM PLUS+CINTAS _________29,800 ptas.
TECLADO DK'TRONICS +4 PROGRAMAS 8.990 ptas.
AMPLIFICADOR DE SONIDO 2,695 ptas.
INTERFACE INDESCOMP PARAL/RS-232 8.995 ptas.
IMPRESORA GP-508 19.990 ptas.
INTERFACE-1 10.990 ptas.
AMSTRAD 464 (MONITOR +CINTAS) ___57,900 ptas.
AMSTRAD 664 (MONITOR + DISCOS) ___93,900 ptas.
MICRODRIVE 10.900 ptas.
MICROLID: Gregorio Fdez, 6
Tel.: (983) 35 26 27 VALLADOLID.
BYTE: Plaza Padre Damián, 2
Tel.: (967) 23 78 55 ALBACETE
Si nos pides una de estas novedades, GRATIS recibirás + COMMUTADOR TV/ORDENADOR, o 1 BOLIGRAFO
CON RELOJ INCORPORADO, O 1 LIBRO DE BASIC (S/, COMPLETAMENTE GRATIS).
AAA ES
2 2.095 2
QUICJ SHOT 1 + INTERFACE
T. KEMPSTON 3.395 ptas.
QUICK SHOT ll +INTERFACE
T. KEMPSTON 3.995 ptas.
LAPIZ OPTICO 3.680 ptas.
Cartucho microdrive E 495 ptas.
Cinta C-15 (especial) 85 ptas.
SPY HUNTER 1.975 ptas.
BRUCE LEE 1.925 ptas.
AIRWOLF 1.695 ptas.
POLE POSITION 1.975 ptas.
UNDERWULDE 1.875 ptas.
ALIEN 8 1.875 ptas.
* 20 por 100 de descuento en todas las impresoras.
Te recordamos que puedes pedir posters de
tus juegos favoritos, adhesivos, bolígrafos o in-
formación en general, todo gratuitamente.
Si el pedido lo deseas contra-reembolso
(sin gastos de envío), llama al tel. (91) 274 53 80
O 233 07 81 (será más rápido el envío) o escri-
biendo a Cl Jorge Juan, 116. 28028 MADRID.
1:7195: 1
1.995 2
2.395
2.095
Geely [mua waY
E €
1/ AA AS
Ml BB / ¡250.000 pts. en premios
cada semana! *
VERTE"
ada semana, Microhobby
regala 70 premios entre sus
lectores. La clave del premio
es el número que figura en
este cupón, en la esquina superior
derecha.
Para saber si el número de tu
ejemplar está premiado, debes
introducirlo en tu Spectrum,
utilizando para ello el programa
«Hobby-Suerte». La cassette con
este programa se ha entregado a
los lectores junto con el número 15
de Microhobby Semanal. Si no
posees esta cinta, puedes pedir
una copia a un amigo o por carta
a Hobby Press, S.A.,
Apartado n.* 54062.
Madrid, incluyendo dentro del
sobre 180 pts. en 3 sellos de
Correos de 60 pts. cada uno. Este
programa sirve para leer todos los
números durante las 50
semanas que dure este
Concurso.
(Bases en el reverso)
E E E E E E E E E
O e O O O O O o O O O O dea dedo da
ESTE NUMERO PUEDE SIGNIFICAR
UN FABULOSO REGALO PARA TI.
onsulta a tu Spectrum!
Premios semanales
MPrimera Categoría
Un Spectrum 48 k. (o un Microdrive
y un Interface 1, a elegir por el
interesado).
MSegunda Categoría
Una Impresora GP 50 de
Seikosha, especialmente diseñada
para Spectrum (2 premios).
MTercera Categorío
Un Joystick con su interface
(3 premios).
MC uarta Categoría
Una Suscripción a Microhobby
Semanal por un año (50 números. Si
el lector premiado ya es suscriptor,
podrá optar por prolongar su
suscripción anual o un premio de
Quinta Categoría) (14 premios).
M Quinta Categoría
Una Cinta de Programa, a elegir
entre un variado surtido de juegos,
utilidades, etcétera (50 premios).
Hobby Press, S.A. garantiza que cada
semana introduce al azar, entre todos los ejemplares
que componen la edición, setenta cupones
correspondientes a los premios aqui citados.
A E A AA UU O UN, O AE E A GT O
ze
»
»*
»
»
»
»
pa
*
»
-
*
*
»
»*
*
»
»*
»*
-
.amM
"HOBBY
SUERTE”
Instrucciones para concursar
Una vez introducido en memoria el programa
«Hobby-Suerte», aparecerá en la pantalla
la clásica máquina «tragaperras» de frutas.
A continuación, debes teclear el número que fi-
gura en esta tarjeta. Al pulsar «Enter», la «má-
quina» se pone en marcha y te hace saber si has
sido agraciado con uno de los 70 premios se-
manales.
Muy importante: Puede ocurrir que,
al introducir en el programa números al azar,
alguno de ellos corresponda casualmente a un
premio. También es posible, con los suficientes
conocimientos de Basic, alterar el programa pa-
ra que un número determinado aparezca como
premiado.
LD E XX LC O XO HBO M
Por todo ello, debemos aclarar los siguientes as-
pectos:
1. El único justificante para reclamar Un premio
determinado es la posesión del cupón con el nú-
mero impreso en él.
2. Todos los números susceptibles de dar pre-
mio están registrados ante Notario.
3. Hobby Press, S.A. no se hace responsable de
ningún otro cupón que no corresponda a los nú-
meros previamente registrados. Tampoco se
atenderán reclamaciones verbales que no ven-
gan acompañadas por la posesión del cupón
con el número premiado.
4. Cualquier lector puede solicitar de esta Edi-
torial la comprobación de la entrega de los Pre-
mios ns
5. Hobby Press, S.A. se reserva el derecho a re-
solver según su criterio cualquier cuestión no pre-
vista en las Bases de este Concurso
6. La reclamación de cualquier Premio de este
Concurso caduca el día 30 de Junio de 1986.
SR A A A A
COMUNICACION DE PREMIO
(Enviar rellenado con letra clara y en sobre cerrado)
Nombre
Apellidos ....
Domicilio.
Ciudad .
Categoría del Premio Obtenido ...
Teléfono
Provincia
Si consideras que tu cupón tiene premio, fotocópialo como medida de seguridad y envialo por Correo Certifica-
do a Hobby Press, S.A., Apartado 54.062 de Madrid. Por favor, anticipanos todos estos datos por teléfono, ll
mando al (91) 654.32 11. En este mismo número atenderemos cualquier consulta o duda sobre las Boses o la mecá-
nica de «Hobby Suerte».
Envía este cupón por correo certi
-
* TS A O A FE EN A E A O O E O SS
E TS E E TS SS SE SS SE
* +
kk kk xh +
+k
x
Pula olaa ey op pepionpeo ap eyoay
NIRO VHO MIS NE]. A TON 7), *OM0389:30 VIEW
o/N Jeund ¡ap osjoquieos euoo []. 2 MN e1sOd 00 [7] 'V'S 'SSAYA ABIOH 9P a4quI0U e oJunipe oLiBoueg voleL []
ueIAuOs au! seu 9nb oBed ap euno; e] aJUSIpuOdSaJJOD OJA/ISEO [8 UA (X) BUN 109 O9JEW
- NOIS3JOHA ONOY33131 W1SOd 9
E 2 MIONIAOEd avanio
k E > —— ONMIDINOO
SsoQqImiadv
avas ES 75%, - 3YENON
VNVdS3 VHVA O10S SVANVA SVLY3IJO
(ojnua epeo Jod soJseb ap “seld g/ 109 URIRIUaUIaJou! as Os[OQUIS94 B1Juoo sopIpad so7 'oun epeo “sejd g6y sayonjsa
so¡ A epeyod ey ue 91n61 enb ousiu jo sa sejdualo epeo ap or981d13'91 05 £8. (16) AZ1 05 ££L (16) 'sunu so] e ouoja1e1 od
O '¡e1sod e1al181 O B11e9 aJuBIpaW soJa1oIJos 'UDIDRUJSPenguA AP SAYINISA O 'SEJSIAOH DP SOPESENE SOJOUINU 11QI99J PIPA)
E 18 [9P SOJSWNN (snisn¡o — [8 — 19p SOJSUINN
n¡9ui) —— ¡e —— [ap soJaunN (enisn¡9ul) —— ¡e —— Jap SOJSuINN
(enisn¡ou1) * [e —— 19p SOJSUINN (enisn¡9uI) 2 — e ——— [ap soJauInN
“(ejulo epeo Jod ou) op
-¡pad epes o/nua ap so]seb Jod "sejd g/ seu 'sejasad Ogg ap se oroald ns Á (e1a]90]9
'ZL 126'8 18 9 'p 18 1) soanoasuos sosaunu o.eno ajue4mp ¡euewas Áqqoy LJ]
-OJO!N JOd sopeoqgnd sewe1Bold so, sopeqelb ena] sejulo sejse ap eun
epeo uosenu!juos e o9ipu! anb seuwe15041d ap (s)ejuro (s)e 11qroas oasap * S
“(seroBJ9 “¡ejsod 0116 un
Pp1uO, O "UQANO a]Sa OO OJUNÍ 'OP21199 3/GOS UN UA UQ|E] UN ALA 'J0AB) JOG "ON/P9IO AP PIO(1E 1 O OSIOQUAAS ojueIpaw oBed
ap sapep1¡epow se] 1epuadsns e sopeB11go souansou 'a1quiandas ap 0€ 19 e1sey Á e11JO e1s9 ap ¡euorodaoxa o] e op1gag)
"sejesad 001'z ua epelo|
-2a “«“spods1adÁH» ewe1bBo4d ap ¡eurBr1o ejuro eun “ayued ¡uu JOd O/nu9 Sp so] IS 5
-se6 uls 'o¡ebal 009 11q1991 Á “sejosad 05z'p ep jenjoe or9aud ¡e “(soJawnu
05) oue un ajueJmp ¡euewas ÁqqoyoJo! JA e]sinay e] e auniquosns 09sap *
DAEES PEIRS ECECMUTATE (A EC IEA AE
O/938d 13 348N.190 30 | 130 YILUVA Y 'ABIOHOYIIA Y NOIOdIHISNS NL
o DECERCECLONNDN RENE EEE CCUENMECGE Mia ER AO ll
¡¡SLUOdSYyY3dIH "OSO MAVY!!
(cortar por la linea de trazos)
Postal
| Franqueo
HOBBY PRESS, S.A.
Apartado de Correos
n.2 54.062 (Apartados Altos)
28080 MADRID
PRESA EESRSUEDEIETEUS ES DERF DA
LD A,(BC)
El contenido de 8 bits de la dirección de memo-
ria especificada por el contenido del par BC es
transferido al registro A.
Mnemónico: LD Operandos: A,(BC)
Formato binario:
Ciclos: 2
Estados: 7 (4,3)
Indicadores: ninguno
L a'forma de llamada es RANDOMIZE USR
n+d, siendo n la dirección donde se ubicará la
rutina y d el desplazamiento de la subrutina que
queremos utilizar para operar con los ficheros de
imagen de 2 pantallas, la del sistema y la de tra-
bajo, situada a partir de la dirección 32000.
El valor d puede ser O (almacenamiento en la
pantalla de trabajo), 12 (recuperación de la
pantalla de trabajo), 24 (intercambio de ambas
pantallas), 47 (mezcla de ambas pantallas).
Para d=47 se puede fijar el modo de mezclado
usando la instrucción POKE n+57, códigos 174
(OVER 1 “XOR (HL)”), 182 (OVER O “OR (HL)”),
166 (intersección “AND (HL)”), 126 (intercambia
el archivo de imagen “LD A,(HL)”), 047 (INVERSE 1).
Funcionamiento:
Para d=0 y d=12 se carga la dirección inicial
de una pantalla en el par HL y la longitud en el par
BC, y se transfiere a una zona de memoria cuyo
comienzo está especificado por el par DE.
Para d=24 y d=47 se repite un bucle que barre
los ficheros de imagen de ambas pantallas, inter-
cambiándolos o mezclándolos.
Instr. Dec.
LDA,/(BC) OA 10
LD A, (DE) 14 26
Hex.
Hex.
Instr.
LD (BC),A 02
LD (DE),A 12
LD (BC),A
El contenido del registro A es transferido a la di-
rección de memoria especificada por el conteni-
do del par BC.
Mnemónico: LD Operandos: (BC),A
Formato binario:
Ejemplo:
Si el contenido del par BC es 3000H, y el conte-
nido del registro A es 7FH, después de ejecutar la
instrutción: LD (BC),A
resultará que la dirección de memoria 3000H
contiene 7FH.
Ciclos: 2
Estados: 7 (4,3)
Indicadores: ninguno
MICROFICHA 1-5
MICROFICHA R-3
LD A,(DE)
El contenido de 8 bits de la dirección de memo-
ria especificada por el contenido del para DE es
transferido al registro A.
Mnemónico: LD Operandos: A,(DE)
Formato binario:
Ciclos: 2
Estados: 7 (4,3)
Indicadores: ninguno
LD (DE),A
El contenido del registro A es transferido a la
dirección de memoria especificada por el conte-
nido del par DE.
Mnemónico: LD Operandos: (DE),A
Formato binario:
Ciclos: 2
Estados: 7 (4,3)
Indicadores: ninguno
10 ¡k MENAJE DE PANTALLAS *
30;
40 ORG s$0000 ¡RUTINA REUBICABLE
60 ; ALMACENAMIENTO DE PANTALLA
80 START1 LD HL, 16384 ;Com. de la pantalla
90 LD DE,32000 ¡Dir. de la pant. 2
100 LD BC,6912 ¡Longit, de la pant.
110 LDIR ¡Almacena la pantalla
120 RET
140 ¡ RECUPERACION DE PANTALLA
150 START2 LD HL, 32000 ¡Dir. de la pant. 2
160 LD DE,16384 ¡Comienzo de la pant.
170 LD BC,6912 ¡Longit. de la pant.
180 LDIR 5 ¡Recupera la pantalla
190 RET
200 ;
210 ¡ INTERCAMBIO DE PANTALLAS
220 STARTS LD HL,32000 ¡Dir, de la pant. 2
230 LD DE, 16384 ¡Comienzo de la pant.
240 LD BC,6912 ¡Long. de la pantalla
250 BUCLE1 LD A,(DE> ¡Intercambía el
260 EX AF,AF' — ¡contenido de
270 LD A,CHL> ¡la pantalla con la
280 LD (DE>,A — ;¡ pantalla almacenada
290 EX AF, AF'
300 LD (HL>,A
310 INC DE ¡Pantalla 1
320 INC HL ¡Pantalla 2
330 DEC” PG ¡Longitud de pantalla
340 LD AB 1
350 OR G ¡Comprueba si BC=0
360 JR
370 RET
NZ, BUCLE1;sí no, repíte BUCLE1
380 ;
390 ;
400 STARTA LD
410 LD
MEZCLA DE PANTALLAS
HL, 32000 ¡;Dír. de la pant. 2
DE, 16384 ;Com. del DISP.FILE
420 LD BC,6144 ¡Long. DISP.FILE
430 BUCLE2 LD A, (DE) ¡Cont. del DISP.FILE
440 MODO XOR (HL) ¡;XOR con la pant. 2
450 LD (DE>,A — ¡Result. al DISP.FILE
160 INC DE ISPLAY FILE
470 INC HL ¡Segunda pantalla
480 DEC BC ¡Long. del DISP.FILE
490 LD A,B ;
500 OR 6 ¡Comprueba sí BC=0
510 JR NZ, BUCLE2;si no, repite BUCLE2
520 RET
E | microprocesador Z80 A tiene registros
cuya característica es la de acceder a ellos para
almacenamiento de datos temporales para po-
der realizar operaciones con ellos sin necesidad
de utilizar memoria RAM externa. Existen dosjue-
gos de registros de propósito general pudiéndo-
se reservar un juego de ellos además del AF para
el manejo de una rutina de acción inmediata.
1. El Acumulador:
Es el registro más utilizado ya que realiza y
contiene el resultado de las operaciones lógicas
y aritméticas con 8 bits. Las operaciones que
pueden realizarse con el acumulador son: trans-
ferencias, suma, resta, AND y OR lógicos, XOR (or
exclusivo lógico), comparaciones y complemen-
tación a 1 ya 2.
2. El par HL:
Es el par de registros más versátil de todos los
que contiene el Z80 A, utilizado normalmente pa-
ra contener las direcciones de memoria que se
El Acumulador
El par de registros HL
Los pares de registros BC y DE
Los registros indexados IX e IY
El puntero de pila o SP
Los registros especiales"
— Registro de banderas o Flags
— Registro de interrupciones
— Registro de refresco de memoria
van utilizando durante el transcurso de una ruti-
na, ya que algunas operaciones con los otros pa-
res (BC y DE) no son ejecutables.
3. Los pares BC y DE:
Suelen utilizarse como pares auxiliares del HL
en instrucciones que manipulan bloques tales
como LDI, LDIR, etc.
4. Registros indexados IX e IY:
Los registros índice se utilizan como base para
apuntar a una región de memoria de donde se va
MICROFICHA G-4
SS
L a función USR del Basic del ZX Spectrum
es como el cordón umbilical que une el Basic en
sí, con los programas escritos en código máqui-
na.
Realiza además otra función, cuando el argu-
mento es de tipo cadena, que nos da la dirección
de comienzo delos caracteres UDG (Gráficos de-
finibles por el usuario).
Con una expresión numérica, el BASIC hará
una llamada a una subrutina en código máquina
que comience en la dirección indicada por el va-
lor de la expresión.
En la subrutina debemos preservar el par de
registros lY, que es el puntero para las variables
del sistema, y debe apuntar siempre a la variable
ERR-NR, dirección 23610 (5C3AH).
Debemos también preservar el par de registros
HL”, que contiene información necesaria para el
calculador del BASIC.
Podemos, además, conocer la dirección de co-
mienzo de la subrutina, que está en el par de re-
gistros BC, dato necesario para reubicación y
manejo de memoria.
Llamada a una subrutina en código máquina
Dirección de llamada
Parámetros numéricos con POKEs
Parámetros numéricos con REM
Parámetros numéricos en expresión
Valor de retorno
Por otra parte, la función USR devuelve el valor
en decimal del par de registros BC., muy útil para
Usar con variables númericas, por ejemplo, LET
num=USR nn, donde se llama a una subrutina
que comienza en la dirección nn, y al volver, la va-
riable numérica «num» tiene el valor decimal del
par BC.
MICROFICHA G-5
a tomar o almacenar un dato. Se incluye un byte
adicional para especificar un desplazamiento de
esta base.
5. El puntero de pila SP:
La pila o stack está organizada de forma que el úl-
timo dato que entra en la misma es el primero que
sale. Esta organización permite el anidamiento
ilimitado de rutinas.
6. Registros especiales:
— Registro de indicadores o Flags (F): indica
las condiciones que se producen al realizar las
operaciones en 8 y 16 bits.
— Registro de interrupciones |: Se utiliza para
ejecutar cualquier subrutina como respuesta a
una interrupción en modo IM2.
— Registro de refresco de memoria R: el dato
del contador de refresco se coloca en la parte ba-
ja del bus de direcciones junto con una señal de
control de refresco proporcionada por la CPU,
mientras ésta busca y decodifica la instrucción.
Para pasar a su vez parámetros a la subrutina,
podemos utilizar 3 sistemas:
— POKEando los valores numéricos en las di-
recciones determinadas.
— Colocándo!os en una instrucción REM, en la
siguiente linea después de la función, que
NO provoca errores de sintaxis, cuya direc-
ción de comienzo está en la variable del sis-
tema NEXTLIN, dirección 23637 (5C55H).
— Usando USR en una expresión que conlleve
el almacenamiento de los parámetros en el
Stack del calculador BASIC, teniendo en
cuenta la jerarquía de la expresión.
Ej.: RANDOMIZE 1 + a + USR nn
En este caso, el Basic chequea la expresión,
y carga en el Stack los valores 1, y el de la
variable «a», y antes de realizarlas operacio-
nes ejecuta la llamada al código máquina,
puesto que por tener mayor prioridad, ha de
realizar primero la multiplicación, en la que
USR mn es el multiplicador, y el resultado fi-
nal de la expresión se usará para el RANDO-
MIZE en sí, almacenándolo en la variable de
sistema SEED, dirección 23670 (5C76H).
Programa Basic
Codigo Maquina
Cuando se trabaja con el Interface 1, sólo se
puede utilizar con las instrucciones RANDOMIZE
y LET, puesto que garantiza la correcta pagina-
ción de la ROM principal, contra otras instruccio-
nes, especialmente IF USR nn, que pueden dejar
el sistema completamente «colgado».
E | microprocesador Z80 A tiene registros
cuya característica es la de acceder a ellos para
almacenamiento de datos temporales para po-
der realizar operaciones con ellos sin necesidad
de utilizar memoria RAM externa. Existen dosjue-
gos de registros de propósito general pudiéndo-
se reservar un juego de ellos además del AF para
el manejo de una rutina de acción inmediata.
1. El Acumulador:
Es el registro más utilizado ya que realiza y
contiene el resultado de las operaciones lógicas
y aritméticas con 8 bits. Las operaciones que
pueden realizarse con el acumulador son: trans-
ferencias, suma, resta, AND y OR lógicos, XOR (or
exclusivo lógico), comparaciones y complemen-
tación a 1 ya2.
2. El par HL:
Es el par de registros más versátil de todos los
que contiene el Z80 A, utilizado normalmente pa-
ra contener las direcciones de memoria que se
El Acumulador
El par de registros HL.
Los pares de registros BC y DE
Los registros indexados IX e IY
El puntero de pila o SP
|. Los registros especiales”
— Registro de banderas o Flags
— Registro de interrupciones
— Registro de refresco de memoria
van utilizando durante el transcurso de una ruti-
na, ya que algunas operaciones con los otros pa-
res (BC y DE) no son ejecutables.
3. Los pares BC y DE:
Suelen utilizarse como pares auxiliares del HL
en instrucciones que manipulan bloques tales
como LDI, LDIR, etc.
4. Registros indexados |X e IY:
Los registros índice se utilizan como base para
apuntar a una región de memoria de donde se va
MICROFICHA G-4
a tomar o almacenar un dato. Se incluye un byte
adicional para especificar un desplazamiento de
esta base.
5. El puntero de pila SP:
La pila o stack está organizada de forma que el úl-
timo dato que entra en la misma es el primero que
sale. Esta organización permite el anidamiento
ilimitado de rutinas.
6. Registros especiales:
— Registro de indicadores o Flags (F): indica
las condiciones que se producen al realizar las
operaciones en 8 y 16 bits.
— Registro de interrupciones |: Se utiliza para
ejecutar cualquier subrutina como respuesta a
una interrupción en modo IM2.
— Registro de refresco de memoria R: el dato
del contador de refresco se coloca en la parte ba-
ja del bus de direcciones junto con una señal de
control de refresco proporcionada por la CPU,
mientras ésta busca y decodifica la instrucción.
L a función USR del Basic del ZX Spectrum
es como el cordón umbilical que une el Basic en
sí, con los programas escritos en código máqui-
na.
Realiza además otra función, cuando el argu-
mento es de tipo cadena, que nos da la dirección
de comienzo de los caracteres UDG (Gráficos de-
finibles por el usuario).
Con una expresión numérica, el BASIC hará
una llamada a una subrutina en código máquina
que comience en la dirección indicada por el va-
lor de la expresión.
En la subrutina debemos preservar el par de
registros |Y, que es el puntero para las variables
del sistema, y debe apuntar siempre a la variable
ERR-NR, dirección 23610 (5C3AH).
Debemos también preservar el par de registros
HL”, que contiene información necesaria para el
calculador del BASIC.
Podemos, además, conocer la dirección de co-
mienzo de la subrutina, que está en el par de re-
gistros BC, dato necesario para reubicación y
manejo de memoria.
Llamada a una subrutina en código máquina
llamada
Dirección de lla a
Parámetros numéricos con POKEs
Parámetros numéricos con REM
Parámetros numéricos en expresión
Valor de retorno
Por otra parte, la función USR devuelve el valor
en decimal del par de registros BC., muy útil para
usar con variables númericas, por ejemplo, LET
num=USR nn, donde se llama a una subrutina
que comienza en la dirección nn, y al volver, la va-
riable numérica «num» tiene el valor decimal del
par BC.
MICROFICHA G-5
Para pasar a su vez parámetros a la subrutina,
podemos utilizar 3 sistemas:
POKEando los valores numéricos en las di-
recciones determinadas.
Colocándolos en una instrucción REM, en la
siguiente línea después de la función, que
no provoca errores de sintaxis, cuya direc-
ción de comienzo está en la variable del sis-
tema NEXTLIN, dirección 23637 (5C55H).
Usando USR en una expresión que conlleve
el almacenamiento de los parámetros en el
Stack del calculador BASIC, teniendo en
cuenta la jerarquía de la expresión.
Ej.: RANDOMIZE 1 + a + USR nn
En este caso, el Basic chequea la expresión,
y carga en el Stack los valores 1, y el de la
variable «a», y antes de realizar las operacio-
nes ejecuta la llamada al código máquina,
puesto que por tener mayor prioridad, ha de ,
realizar primero la multiplicación, en la que
USR mn es el multiplicador, y el resultado fi-
nal de la expresión se usará para el RANDO-
MIZE en sí, almacenándolo en la variable de
sistema SEED, dirección 23670 (5C76H).
Programa Basic
Codigo Maquina
Cuando se trabaja con el Interface 1, sólo se
puede utilizar con las instrucciones RANDOMIZE
y LET, puesto que garantiza la correcta pagina-
ción de la ROM principal, contra otras instruccio-
nes, especialmente IF USAR nn, que pueden dejar
el sistema completamente «colgado».
E EN Se
LD A,(BC)
El contenido de 8 bits dela dirección de memo- E Di Der
ria especificada por el contenido del par BC es LDA,(BC) OA 10 LD (BC),A 02
transferido al registro A. LD A, (DE) 1A 26 LD (DE),A 12
Mnemónico: LD Operandos: A,(BC) LD (BC),A
F to binario: El contenido del registro A es transferido a la di-
ormato:Binanio: Ciclos: 2 rección de memoria especificada por el conteni-
AOS do del par BC.
o A
Indicadores: ninguno Mnemónico: LD Operandos: (BC),A
Formato binario:
Ciclos: 2
ODER Estados: 7 (4,3)
Indicadores: ninguno
Ejemplo:
Si el contenido del par BC es 3000H, y el conte-
nido del registro A es 7FH, después de ejecutar la
instrucción: LD (BC),A
resultará que la dirección de memoria 3000H
contiene 7FH.
MICROFICHA 1-5
LD A,(DE) LD (DE),A
El contenido de 8 bits de la dirección de memo- El contenido del registro A es transferido a la
ria especificada por el contenido del para DE es dirección de memoria especificada por el conte-
transferido al registro A. nido del par DE.
Mnemónico: LD Operandos: A,(DE) Mnemónico: LD Operandos: (DE),A
Formato binario: Formato binario:
Ciclos: 2 Ciclos: 2
MP DObaaDAan Estados: 7 (4,3) A Estados: 7 (4,3)
Indicadores: ninguno Indicadores: ninguno
L a'forma de llamada es RANDOMIZE USR
n+d, siendo n la dirección donde se ubicará la
rutina y d el desplazamiento de la subrutina que
queremos utilizar para operar con los ficheros de
imagen de 2 pantallas, la del sistema y la de tra-
bajo, situada a partir de la dirección 32000.
El valor d puede ser O (almacenamiento en la
pantalla de trabajo), 12 (recuperación de la
pantalla de trabajo), 24 (intercambio de ambas
pantallas), 47 (mezcla de ambas pantallas).
Para d=47 se puede fijar el modo de mezclado
usando la instrucción POKE n+57, códigos 174
(OVER 1 “XOR (HL)”), 182 (OVER O “OR (HL)”),
166 (intersección “AND (HL)”), 126 (intercambia
el archivo de imagen “LD A, (HL)”), 047 (INVERSE 1).
Funcionamiento:
Para d=0 y d=12 se carga la dirección inicial
de una pantalla en el par HL y la longitud en el par
BC, y se transfiere a una zona de memoria cuyo
comienzo está especificado por el par DE.
Para d=24 y d=47 se repite un bucle que barre
los ficheros de imagen de ambas pantallas, inter-
cambiándolos o mezclándolos.
MICROFICHA R-3
360 JR NZ, BUCLE1;sií no, repite BUCLE1
10 ;* MENAJE DE PANTALLAS * 370 RET
20; 380 ;
30; 390 ¡; MEZCLA DE PANTALLAS
40 ORG 60000 ¡RUTINA REUBICABLE 400 START4 LD HL,32000 ¡Dir. de la pant. 2
50 ; 410 LD DE,16384 ¡Com. del DISP.FILE
60 ; ALMACENAMIENTO DE PANTALLA 420 LD BC,6144 ¡Long. DISP.FILE
7o ; 430 BUCLE2 LD A, (DE) ¡Cont. del DISP.FILE
80 START1 LD HL, 16384 ;Com. de la pantalla 440 MODO XOR HL) ¡;XOR con la pant. 2
90 LD DE,32000 ;Dir. de la pant. 2 450 LD (DE>,A — ¡Result. al DISP.FILE
100 LD BC,6912 ¡Longít. de la pant. 460 INC DE ¡DISPLAY FILE
110 LDIR 5 ¡Almacena la pantalla 470 INC HL Segunda pantalla
120 RET 480 DEC BC Long. del DISP, FILE
130 ; 490 LD A,B ;
140 ¡ RECUPERACION DE PANTALLA 500 OR c ¡Comprueba si BC=0
150 START2 LD HL,32000 ¡Dir. de la pant. 2 510 JR NZ, BUCLE2;si no, repite BUCLEZ
160 LD DE,16384 ¡Comienzo de la pant. 520 RET
170 LD BC,6912 ;¡Longit. de la pant
180 LDIR 5 ¡Recupera la pantalla
190 RET
200 ;
210 ¡ INTERCAMBIO DE PANTALLAS
220 STARTS LD HL,32000 ¡Diír. de la pant. 2
230 LD DE, 16384 ¡Comienzo de la pant.
240 LD BC,6912 ¡Long. de la pantalla
250 BUCLE1 LD A, <DE> ¡Intercambia el
260 EX AF, AF" contenido de
270 LD A, (HL) la pantalla con la
280 LD (DE>,A — ¡ pantalla almacenada
290 EX AF, AF"
300 LD (HL), A
310 INC DE ¡Pantalla 1
320 INC HL ¡Pantalla 2
330 DEC BC ¡Longitud de pantalla
340 LD A,B ;
350 OR c ¡Comprueba si BC=0